[英]Writing multiple lines to a file
我试图在单击JButton时将时间戳记写入文件。 一旦.close()
,数据就会写入文件,而其他写入都会引发错误。 我如何写数据而不必创建新的FileWriter并覆盖上一行?
您可以关闭FileWriter
对象上的flush()
,而不是进行隐式关闭。 这样可以保持打开状态,但是会强制将已缓冲的数据写入文件。 不过,完成编写后,请不要忘记close()
。
您可以使编写器在单击之间保持打开状态,并在其他时间关闭它(也许在退出窗体时),或者可以为每次单击创建一个新的FileWriter并将其附加到文件中已有的内容上。
FileWriter writer = new FileWriter("output.txt", true); //true here indicates append to file contents
如果选择在两次单击之间使编写器保持打开状态,则可能需要在每次按下按钮时调用.flush(),以确保文件是最新的。
尝试这个,
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class Wr {
public static void main(String[] args) throws IOException {
File f = new File("viv.txt");
FileWriter fw = new FileWriter(f, true);
BufferedWriter bw = new BufferedWriter(fw);
bw.write("Helloooooooooo");
bw.close();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.