我在将文件列表保存到文件时遇到一些问题:
class listFilesForFolder{
static String fs1= System.getProperty("user.dir" )+"/lista plików";
static File fs2= new File(fs1);
public static void listFilesForFolder(File folder) throws FileNotFoundException {
for ( File fileEntry : folder.listFiles()) {
if (fileEntry.isDirectory()) {
listFilesForFolder(fileEntry);
}
System.out.println(fileEntry.getName());
zapis(fileEntry.getName());
}
}
static void zapis(String plik)throws FileNotFoundException {
PrintWriter zapis = new PrintWriter(fs2);
zapis.println(plik+ "\r\n");
zapis.close();
}
}
这段代码在屏幕上打印了所有文件列表,但是我的文件“ listaplików”只有一个文件名(应该有多个)。我该做什么?
最佳答案
根据PrinterWriter的文档,如果该文件存在,它将被“截断为零大小”。每次调用new PrintWriter
时,文件都会被截断。
要修复此问题,只需调用一次PrintWriter构造函数,而不是每次要写入文件时都进行调用。