Java遍历文件夹下的所以文件

Posted zhangjinru123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java遍历文件夹下的所以文件相关的知识,希望对你有一定的参考价值。

利用Java递归遍历文件夹下的所以文件,然后对文件进行其他的操作。如:对文件进行重命名,对某一类文件进行重编码。可以对某一工程下的全部.java文件进行转码成utf-8等

代码如下,这里只对文件进行重命名操作

 1 package com.zhang.test;
 2 
 3 import java.io.File;
 4 
 5 public class getfilepath {
 6 
 7     public static void main(String[] args) {
 8         getDirectory(new File("E:/背景图"));
 9     }
10     // 递归遍历
11     private  static void getDirectory(File file) {
12         File flist[] = file.listFiles();
13         if (flist == null || flist.length == 0) {
14             return ;
15         }
16         for (File f : flist) {
17             if (f.isDirectory()) {
18                 //如果是文件夹则继续
19                 getDirectory(f);
20             } else {
21                 //这里将列出所有的文件
22                 System.out.println(f.getAbsolutePath());
23                 /**
24                  * 在这里则可以对文件进行重命名或者对某一类文件进行重编码,如:对.java文件转码成utf-8
25                  */
26                 //文件重命名示例如下
27                 String filename= f.getName();
28                 String suffix=  filename.substring(filename.lastIndexOf("."), filename.length());
29                 String absolutePath=f.getAbsolutePath();
30                 String path=absolutePath.substring(0,absolutePath.lastIndexOf("\\\\")+1);
31                 String newname=path+System.currentTimeMillis()+""+suffix;
32                 File newfile=new File(newname); 
33                 if(newfile.exists())//若在该目录下已经有一个文件和新文件名相同,则不允许重命名 
34                     System.out.println(newname+"已经存在!"); 
35                 else{ 
36                     f.renameTo(newfile); 
37                 } 
38             }
39         }
40     }
41 }

对文件重编码看另一篇文章。http://www.cnblogs.com/zhangjinru123/p/7225775.html

以上是关于Java遍历文件夹下的所以文件的主要内容,如果未能解决你的问题,请参考以下文章

java 如何递归遍历多重目录下的指定格式文件复制到目标目录并改格式

求PHP遍历文件夹代码

JAVA 遍历文件夹下的所有文件

Java 递归算法,遍历文件夹下的所有文件。

java 遍历文件夹下的文件名

在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途