据我所知,BufferedWriter
存储信息之前,我写在文件执行使用在文件中写入它的行为之前flush()
,Append()
等等。
我从多个来源收集信息,所以目前我正在做的是在每个来源中循环并每次将其直接附加到文件中,但我想要完成的是BufferedWriter
在完成循环后添加所有信息,将它写入文件,怎么做?
我试图通过不多次将数据刷新到文件中来提高性能。性能是问题,因为这可能会循环 100 万次。
这是我目前正在做的事情:
打开 BufferedWriter
从不同的源读取数据并存储在缓冲区中
将存储的数据附加到文本文件中(此处缓冲区已清空)
重复步骤 2.- 和 3.- 50 次
关闭文本文件
这是我想要做的:
打开 BufferedWriter
从不同的源读取数据并存储在缓冲区中
重复步骤 2.- 50 次
附加所有收集的数据(在 50 个循环中收集的数据)
关闭文件
这是代码。
for (int mainLoop = 0; mainLoop < 50; mainLoop++){
try {
BufferedWriter writer = writer = new BufferedWriter(new
FileWriter
("path to file in computer" + mainLoop + ".txt", true));
for(int forloop = 0; forloop < 50; forloop++) {
final Document pageHtml=
Jsoup.connect("link to a page").get();
Elements body = pageHtml.select("p");
writer.append(System.getProperty("line.separator"));
writer.append(System.getProperty("line.separator"));
writer.append(body.text());
System.out.println(forloop);
}
writer.close();
} catch (IOException e) {
e.printStackTrace();
}continue;
}
HUH函数
慕村9548890
相关分类