我有一个创建.txt文件的应用程序.我想覆盖它.这是我的功能:
try{
String test = "Test string !";
File file = new File("src\\homeautomation\\data\\RoomData.txt");
// if file doesnt exists, then create it
if (!file.exists()) {
file.createNewFile();
}else{
}
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(test);
bw.close();
System.out.println("Done");
}catch(IOException e){
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
如果文件存在,我应该在else子句中放入什么,以便它可以被覆盖?
你不需要在else子句中做任何特别的事情.您实际上可以Writer
使用两种不同的模式打开文件:
true
),它将新数据附加到现有数据您不需要做任何事情,默认行为是覆盖。
不知道为什么我被否决了,说真的……这段代码总是会覆盖文件
try{
String test = "Test string !";
File file = new File("output.txt");
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(test);
bw.close();
System.out.println("Done");
}catch(IOException e){
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)