我需要列出目錄中的所有子文件夾並將其寫入文本文件。但是當我編碼時,只有最後一個子文件夾才寫入文件。請幫助。我是Java的初學者。列出目錄中的所有子文件夾並將其寫入文本文件
public class Main {
// private Object bufferedWriter;
/**
* Prints some data to a file using a BufferedWriter
*/
public void writeToFile(String filename) {
try
{
BufferedWriter bufferedWriter = null;
bufferedWriter = new BufferedWriter(new FileWriter(filename));
int i=1;
File f=new File("D:/Moviezzz");
File[] fi=f.listFiles();
for(File fil:fi)
{
if(fil.isHidden())
{
System.out.print("");
}
else if(fil.isDirectory()||fil.isFile())
{
int s=i++;
String files = fil.getName();
//Start writing to the output stream
bufferedWriter.write(s+" "+fil);
bufferedWriter.newLine();
// bufferedWriter.write(s+" "+files);
}
}
//Construct the BufferedWriter object
} catch (FileNotFoundException ex) {
ex.printStackTrace();
}catch (IOException ex) {
ex.printStackTrace();}
}
public static void main(String[] args) {
new Main().writeToFile("d://my.txt");
}
}
嘗試關閉循環後的'BufferedWriter'。 – 2013-05-06 16:04:37
你做過flush()嗎?嘗試一下。 – Ketan 2013-05-06 16:09:36
@AhmedKRAIEM,你是對的,你應該將它發佈爲答案 – 2013-05-06 16:17:19