JavaSE 文件递归之删除&获取文件夹目录中所有的以.jpg的文件的绝对路径
2015-08-10 16:23
1081 查看
1.递归删除文件
如果一个文件夹下面还有子目录,进行删除的话会 报错,这个时候要使用递归的方式来删除这个文件目录中的所有文件以及文件夹
2.获取文件夹目录中所有的以.jpg的文件的绝对路径
如果一个文件夹下面还有子目录,进行删除的话会 报错,这个时候要使用递归的方式来删除这个文件目录中的所有文件以及文件夹
package cn.itcast.digui; import java.io.File; /** * 递归删除demo文件夹中所有文件包括文件夹 * 分析: * A:封装目录 * B:获取改目录下的所有文件或者文件夹 * C:遍历改file数组,得到每一个File对象 * D:判断该file对象是都是文件夹 * 是:回到B * 否:删除 * @author Administrator * */ public class GiGuiDelete { public static void main(String[] args) { File srcFile=new File("demo"); deleteFolder(srcFile); } private static void deleteFolder(File srcFile) { File[] files = srcFile.listFiles(); for(File f:files){ if(f.isDirectory()){ deleteFolder(f);//递归调用 }else{ System.out.println(f.getName()+"---"+f.delete());//删除文件 } } System.out.println(srcFile.getName()+"---"+srcFile.delete());//删除空的文件夹 } }对于测试结果,可以进行debug测试,这里我就不进行测试了!
2.获取文件夹目录中所有的以.jpg的文件的绝对路径
package cn.itcast_03; import java.io.File; /* * 需求:请大家把E:\JavaSE目录下所有的java结尾的文件的绝对路径给输出在控制台。 * * 分析: * A:封装目录 * B:获取该目录下所有的文件或者文件夹的File数组 * C:遍历该File数组,得到每一个File对象 * D:判断该File对象是否是文件夹 * 是:回到B * 否:继续判断是否以.java结尾 * 是:就输出该文件的绝对路径 * 否:不搭理它 */ public class FilePathDemo { public static void main(String[] args) { // 封装目录 File srcFolder = new File("E:\\JavaSE"); // 递归功能实现 getAllJavaFilePaths(srcFolder); } private static void getAllJavaFilePaths(File srcFolder) { // 获取该目录下所有的文件或者文件夹的File数组 File[] fileArray = srcFolder.listFiles(); // 遍历该File数组,得到每一个File对象 for (File file : fileArray) { // 判断该File对象是否是文件夹 if (file.isDirectory()) { getAllJavaFilePaths(file); } else { // 继续判断是否以.java结尾 if (file.getName().endsWith(".java")) { // 就输出该文件的绝对路径 System.out.println(file.getAbsolutePath()); } } } } }对于测试大家可以使用debug模式进行查看
相关文章推荐
- 最大子矩阵问题实例解析
- java生成xml(详细版)
- java方法的重载
- eclipse常用插件安装
- JSON-JSON字符串转换成JSON对象、JSON对象数组、java实体类以及保存到List列表中
- eclipse搭建servlet项目
- 一个广为人知但鲜有人用的技巧:对象池
- java容器类---TreeMap、TreeSet
- myeclipse 同名工程部署问题
- spring MVC原理
- java环境变量的配置
- myeclipse安装SVN插件
- java的变量和方法,实例化new
- Java:JFrame与Frame的区别
- springmvc学习第二天
- Java中==和equals的区别
- struts2的工作流程
- Java Swing 第01记 Hello Word
- spring的AOP和事务
- Java使用synchronized进行线程同步