我正在读取 URL 的内容并将其写入文件,这按预期工作,但即使程序控制台显示多行,它也只写入一次。
代码:
PrintWriter writer = new PrintWriter("the-file-name.txt", "UTF-8");
while(true) {
URL oracle = new URL("https://linkToData.com");
BufferedReader in = new BufferedReader(new InputStreamReader(oracle.openStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
writer.println(inputLine);
System.out.println(inputLine);
}
writer.close();
URL 中的数据会不断刷新,因此每次控制台打印显示时都应该有不同的数据,但它只是将第一个实例写入文件。
最佳答案
关键是writer.close()
!如果您想每次都重新写入文件,则每次都必须重新打开Writer
。
关于Java Writer 在单次写入后停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52719297/