黑马程序员技术交流社区
标题:
BufferedWriter为什么失效了?大神帮忙看下!!!
[打印本页]
作者:
huyang936
时间:
2015-3-4 20:04
标题:
BufferedWriter为什么失效了?大神帮忙看下!!!
本帖最后由 huyang936 于 2015-3-4 20:07 编辑
<p>package cn.itcast.day22;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
/**
* 列出毕向东的视频文件路径
* @author John
*
*/
public class ListFile {
public static void main(String[] args) throws IOException {
//源
File dir = new File("F:\\黑马训练营\\视频辅导班视频");
File destFile = new File("F:\\黑马训练营\\毕向东视频.txt");
showDir(dir,destFile);
}
private static void showDir(File dir,File destFile) throws IOException {
// TODO Auto-generated method stub
//目的
BufferedWriter bw = new BufferedWriter(new FileWriter(destFile));
File[] files = dir.listFiles();
bw.write("a");//测试
if (files!=null) {bw.write("b");//测试
for (File file : files) {bw.write("c");//测试
if (file.isDirectory()) {bw.write("d");//测试
showDir(file,destFile);
}else//file是个文件
{bw.write("e");//为什么bw在这块失效了,写不进内容了
if (file.getName().endsWith(".avi")) {
System.out.println(file.getName());
bw.write(file.getAbsolutePath());
bw.newLine();
bw.flush();
}
}
}
}
//关闭资源
bw.close();
}
}
</p>
复制代码
第32行:
为什么bw在这块失效了,写不进内容了???
作者:
huyang936
时间:
2015-3-4 21:30
[
color=Blue]已解决:是因为在showDir()方法中,BufferedWriter在递归过程中,重复创建造成的。
解决办法:将
//目的
BufferedWriter bw = new BufferedWriter(new FileWriter(destFile));
写到main()方法中,问题解决
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2