我想知道是否有办法添加到已经创建的文本文件。因为当我在已创建的文件上执行此操作时:
public Formatter f = new Formatter("filename.txt");
它将当前的filename.txt重写为空白。 谢谢,奎因
答案 0 :(得分:2)
是的,使用带有OutputStream
参数的构造函数而不是File
参数。这样你就可以在追加模式下打开一个OutputStream并对其进行格式化。 Link
答案 1 :(得分:2)
尝试使用以Formatter
作为参数的Appendable
构造函数。
有几个类实现Appendable
接口。在您的情况下,最方便的应该是FileWriter
。
此FileWrite constructor将允许您以附加模式打开文件(其名称指定为String)。
答案 2 :(得分:1)
使用FileOutputStream
并将附加布尔值设为true,例如new FileOutputStream("C:/concat.txt", true));
public class FileCOncatenation {
static public void main(String arg[]) throws java.io.IOException {
PrintWriter pw = new PrintWriter(new FileOutputStream("C:/concat.txt", true));
File file2 = new File("C:/Text/file2.rxt");
System.out.println("Processing " + file2.getPath() + "... ");
BufferedReader br = new BufferedReader(new FileReader(file2
.getPath()));
String line = br.readLine();
while (line != null) {
pw.println(line);
line = br.readLine();
}
br.close();
// }
pw.close();
System.out.println("All files have been concatenated into concat.txt");
}
}