Java-读取某个目录下所有文件、文件夹和3种从文件路径中获取文件名的方法

1 读取某个目录下所有文件、文件夹

public static ArrayList getFiles(String path) {
    ArrayList files = new ArrayList();
    File file = new File(path);
    File[] tempList = file.listFiles();

    for (int i = 0; i < tempList.length; i++) {
        if (tempList[i].isFile()) {
//              System.out.println("文     件:" + tempList[i]);
            files.add(tempList[i].toString());
        }
        if (tempList[i].isDirectory()) {
//              System.out.println("文件夹:" + tempList[i]);
        }
    }
    return files;
}

2 3种从文件路径中获取文件名的方法

package test;

import java.io.File;

public class FileName {

    /**
     * @param args
     */
    public static void main(String[] args) {
//      举例:
        String fName =" G:\\Java_Source\\navigation_tigra_menu\\demo1\\img\\lev1_arrow.gif ";

//      方法一:

        File tempFile =new File( fName.trim());

        String fileName = tempFile.getName();

        System.out.println("fileName = " + fileName);

//      方法二:

        String fName = fName.trim();

        String fileName = fName.substring(fName.lastIndexOf("/")+1);
        //或者
        String fileName = fName.substring(fName.lastIndexOf("\\")+1);

        System.out.println("fileName = " + fileName);

//      方法三:

        String fName = fName.trim();

        String temp[] = fName.split("\\\\"); /**split里面必须是正则表达式,"\\"的作用是对字符串转义*/

        String fileName = temp[temp.length-1];
        System.out.println("fileName = " + fileName);
    }
}

你可能感兴趣的:(Java)