结果实现不了换行,显示为null,这是为什么啊?

import java.io.File;
import java.io.FileFilter;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

class Test1{
private static final String LINE_SEPARATOR = System.getProperty("line_separator");
public static void main(String[] args) throws IOException{
//指定文件
File dir=new File("e:\java\stu_infor");
//过滤器
FileFilter filter=new FileFilterByTxt();
//使用集合来存储数据
List list=new ArrayList();
//方法:获取指定文件中的指定文件
getFileList(dir,filter,list);
//新建一个文件来存储符合过滤器条件的文件
File destFile=new File("e:\java\txtFile1.txt");
//方法:将集合中的数据输出到指定新建文件中
writeToFile(list,destFile);
}
/**
* 将集合中的数据存储到一个新建指定文件中
* @param list
* @param destFile
* @throws IOException
*/
public static void writeToFile(List list, File destFile) throws IOException {
//输出流
FileOutputStream fos=null;
try{
fos=new FileOutputStream(destFile);
for(File file:list){
String str=file.getAbsolutePath()+LINE_SEPARATOR;
fos.write(str.getBytes());
}
}finally{
if(fos!=null){
try{
fos.close();
}
catch(IOException e){
throw new RuntimeException("关闭出现错误");
}
}
}

}
/**
 * 将指定后缀名的文件存储到集合中
 * @param dir
 * @param filter
 * @param list
 */
public static void getFileList(File dir, FileFilter filter, List<File> list) {
    //获取指定文件目录下的文件
    File[] files=dir.listFiles();
    //遍历文件目录
    for(File file:files){
        //判断是否是子目录,如果是的话,则遍历
        if(file.isDirectory()){
            getFileList(dir, filter, list);

        }else{
            //如果是文件的话,则使用过滤器进行条件的判断
            if(filter.accept(file)){
                //将符合过滤器的数据存储到集合中
                list.add(file);
            }
        }
    }

}

}

2个回答

private static final String LINE_SEPARATOR = System
.getProperty("line.separator");
//获取行分隔符的key写错了应该是line.separator

给个空的list过去干嘛。
List list=new ArrayList();
//方法:获取指定文件中的指定文件
list=getFileList(dir,filter,list);

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐