读书人

写一个方法遍历文件夹参数是目录返

发布时间: 2012-05-22 18:18:54 作者: rapoo

写一个方法遍历文件夹,参数是目录,返回值是一个文件数组,怎么调用
如题~

[解决办法]

Java code
import java.io.File;import java.util.ArrayList;import java.util.Arrays;import java.util.List;public class ListFiles {    private static List ListFile(File path) {        // 遍历出的各个文件全路径        String strPath;        List fileList = new ArrayList() ;        File[] files;        files = path.listFiles(); // 得到一个由文件和目录组成的数组;        if (files == null){  //如果文件夹不存在或者没有其他文件目录的话,直接返回            return new ArrayList() ;        }        Arrays.sort(files); // 把数组按升序排列;        for (int i = 0; i < files.length; i++) {            strPath = files[i].toString();            // 进行相关操作            // 递归            if (files[i].isDirectory()) // 测试是否为目录;            {                List tmp = new ArrayList() ;                System.out.println(files[i].getName());                 tmp = ListFile(files[i]);                 fileList.addAll(tmp) ; //把其中子目录的文件加到list中            }else{                fileList.add(files[i]) ;            }        }        return fileList;    }    /**     * @param args     */    public static void main(String[] args) {        File f=new File("F:\\bill\\archive\\afm");        List files = ListFile(f);                    System.out.println("begin...") ;          String name  ="" ;        for (int i =0; i < files.size();i++){            name = ((File)files.get(i)).getName() ;//不要后缀 ,就自己处理一下嘛,太懒啦//            name = name.substring(0, name.lastIndexOf(".")) ;            System.out.println("文件名.后缀: " + name + "---文件名:" + name.substring(0, name.lastIndexOf(".")) );                }        System.out.println("end.") ;    }} 

读书人网 >J2SE开发

热点推荐