java - 打印机如何不覆盖

标签 java io

所以我在我的Java程序中得到了这段代码;

String filename = "direct.txt";
String s = fil.getAbsolutePath();
Process p = Runtime.getRuntime().exec(s);
   try
   {
        PrintWriter outputStream = new PrintWriter(filename);
        outputStream.println(s);
        outputStream.close();
   }
   catch (FileNotFoundException e1) {e1.printStackTrace();};

但是当它写入文件时,它会在写入新内容时覆盖它,我怎样才能使它不被覆盖而是转到下一行并在那里打印它?

最佳答案

您可以创建一个 FileWriter 对象,并在创建 PrintWriter 对象时将其作为参数传递。这样,如果文件已经存在,那么它不会被覆盖,但如果它不存在,那么它将被创建。从那里您可以正常使用 PrintWriter 方法:

FileWriter objectName = new FileWriter("filename", true);
PrintWriter outputStream = new PrintWriter(objectName);

关于java - 打印机如何不覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21835835/

相关文章:

java - 按钮占据了我的整个屏幕

java - 为什么异常应该在继承中处理,因为构造函数不是继承的?

Java/使用 Junit 4 给出编译错误

java - 使用 writeUnshared() 序列化期间创建的对象数量

io - NFS挂载共享读/写太慢

python - 尝试使用 pandas 读取 csv 时遇到问题?

java - 执行 get 时 Room DB 正在更改项目的顺序

java - 是否可以从 R.java 获取 a (int -> String) 映射

java - 从 HDFS 读取一个简单的 Avro 文件

io - DataInputStream.skipBytes(n) 什么时候不能跳过 n 个字节?