java获取指定目录中的文件列表

2021-04-06 22:26

阅读:405

标签:slist   相同   asList   with   direct   指定   ret   相关   防止   

最近项目中会动态生成文件html及相关资源文件(css,js,png,mp3),为了防止文件名重复,需要获取目录中相同类型文件的最大编号,下面我用代码来实现获得文件列表。

	public static void getFiles(String path) {

		File file = new File(path);
		// 如果这个路径是文件夹
		if (file.isDirectory()) {
			// 获取路径下的所有文件
			File[] files = file.listFiles();
			for (int i = 0; i 

  

	public static File[] getFilter(String strFilePath, String strExtension) {

        File[] list = new File(strFilePath).listFiles();
        
        for(File file : list)
        {
           if(file.isFile())
           {
               if (file.getName().endsWith(strExtension)) {
                   System.out.println(file.getAbsolutePath());
               }
           }
        }

        return list;
	}

  

        如果想要获得当前文件夹中的文件名只需要 String [] fileName = file.list();  就可以了。如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。

  其中public static String [] getFileName(String path)是只得到当前文件中的文件名。public static void getAllFileName(String path,ArrayList fileName)是包括当前文件及其子文件的文件名。

public class GetFileName
{
    public static String [] getFileName(String path)
    {
        File file = new File(path);
        String [] fileName = file.list();
        return fileName;
    }
    public static void getAllFileName(String path,ArrayList fileName)
    {
        File file = new File(path);
        File [] files = file.listFiles();
        String [] names = file.list();
        if(names != null)
        fileName.addAll(Arrays.asList(names));
        for(File a:files)
        {
            if(a.isDirectory())
            {
                getAllFileName(a.getAbsolutePath(),fileName);
            }
        }
    }
    public static void main(String[] args)
    {
        String [] fileName = getFileName("F:\\xiaoshuo");
        for(String name:fileName)
        {
            System.out.println(name);
        }
        System.out.println("--------------------------------");
        ArrayList listFileName = new ArrayList(); 
        getAllFileName("F:\\xiaoshuo",listFileName);
        for(String name:listFileName)
        {
            System.out.println(name);
        }
         
    }
}

  

java获取指定目录中的文件列表

标签:slist   相同   asList   with   direct   指定   ret   相关   防止   

原文地址:https://www.cnblogs.com/wzihan/p/13395104.html


评论


亲,登录后才可以留言!