文件编写器覆盖文件
filewriter overwriting the file
我正在尝试使用 FileWriter("file.txt",true)
使文件编写器追加而不是覆盖,但它不起作用,还有另一个问题(不确定是否已解决)是我无法使用 File file1 = new File("a.txt")
来创建一个文件,所以我正在使用格式化程序。注意我是初学者所以如果可能的话请详细说明我犯的错误。
public static void newPlayer(){
String name = JOptionPane.showInputDialog("Write yourn name ","new player");
System.out.println(name +" " +points);
try {
Formatter file1 = new Formatter(name+".txt");
File file2 = new File(name+".txt");
fw = new FileWriter(file2,true);
String s = Integer.toString(points);
fw.write(s);
fw.close();
file1.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}catch(Exception e){
System.out.println(e);
}
}
去掉关于file1
的那两行,反正也没用了
使用 Formatter 打开文件 append=false
,这会干扰 FileWriter 的设置(在幕后使用相同的文件描述符?OS 依赖?)。
...
try {
File file2 = new File(name+".txt");
FileWriter fw = new FileWriter(file2,true);
String s = Integer.toString(points);
fw.write(s);
// a line feed would make the file more readable
fw.close();
} catch (...
我用格式化程序删除了 file1 行,虽然在我尝试之前它可以工作,但它没有创建文件。如果您有类似的问题并且文件未创建,请尝试 file.createnewfile();
try {
//Formatter file1 = new Formatter(name+".txt");
File file2 = new File(name+".txt");
// file2.createNewFile();
fw = new FileWriter(file2,true);
String s = Integer.toString(points);
fw.write(s);
fw.close();
//file1.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(Exception e){
System.out.println(e);
}
我正在尝试使用 FileWriter("file.txt",true)
使文件编写器追加而不是覆盖,但它不起作用,还有另一个问题(不确定是否已解决)是我无法使用 File file1 = new File("a.txt")
来创建一个文件,所以我正在使用格式化程序。注意我是初学者所以如果可能的话请详细说明我犯的错误。
public static void newPlayer(){
String name = JOptionPane.showInputDialog("Write yourn name ","new player");
System.out.println(name +" " +points);
try {
Formatter file1 = new Formatter(name+".txt");
File file2 = new File(name+".txt");
fw = new FileWriter(file2,true);
String s = Integer.toString(points);
fw.write(s);
fw.close();
file1.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}catch(Exception e){
System.out.println(e);
}
}
去掉关于file1
的那两行,反正也没用了
使用 Formatter 打开文件 append=false
,这会干扰 FileWriter 的设置(在幕后使用相同的文件描述符?OS 依赖?)。
...
try {
File file2 = new File(name+".txt");
FileWriter fw = new FileWriter(file2,true);
String s = Integer.toString(points);
fw.write(s);
// a line feed would make the file more readable
fw.close();
} catch (...
我用格式化程序删除了 file1 行,虽然在我尝试之前它可以工作,但它没有创建文件。如果您有类似的问题并且文件未创建,请尝试 file.createnewfile();
try {
//Formatter file1 = new Formatter(name+".txt");
File file2 = new File(name+".txt");
// file2.createNewFile();
fw = new FileWriter(file2,true);
String s = Integer.toString(points);
fw.write(s);
fw.close();
//file1.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(Exception e){
System.out.println(e);
}