为什么我无法通过PrintWriter写入大量数据?
String result = acquireLengthyData();
PrintWriter out = new PrintWriter("D:/log.txt");
out.println(result);
其中 result.lenght() = 189718
。但 log.txt
中缺少一些数据。为什么?如何正确写入文件?
最佳答案
写入后需要刷新,它会刷新流。 PrintWriter#flush
就可以做到这一点。
Flushes the stream. If the stream has saved any characters from the various write() methods in a buffer, write them immediately to their intended destination.
PrintWriter#flush
- Java doc
代码片段 -
PrintWriter out = new PrintWriter("D:/log.txt");
out.println(result);
out.flush();
out.close();
使用后不要忘记关闭编写器。
关于java - 写入文件的 Printwriter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26061971/