【发布时间】:2013-07-08 18:08:47
【问题描述】:
当我想编写将文本写入文件的 Java 代码时,它通常看起来像这样:
File logFile = new File("/home/someUser/app.log");
FileWriter writer;
try {
writer = new FileWriter(logFile, true);
writer.write("Some text.");
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
但是,如果我要连续执行 大量 写操作怎么办?如果我每秒记录数十、数百甚至数千次写入操作会怎样?
与数据库(和 JDBC)允许“持久连接”(跨多个调用保持打开的连接)的方式相同,有没有办法让“持久流”不需要跨多个 @ 打开/关闭987654322@ 调用?如果是这样,这将如何工作?我必须注意哪些陷阱/警告?提前致谢!
【问题讨论】:
-
顺便说一句,在您的示例中,如果
write引发异常,则编写器不会在write之后立即关闭。
标签: java performance file-io filewriter persistent-connection