黑马程序员__关于学习File类对文件目录操作的总结
来源:互联网 发布:谷歌笔试算法题 编辑:程序博客网 时间:2024/06/06 14:08
------- android培训、java培训、期待与您交流! ----------
需求:
列出指定目录下的的所有文件盒目录,包括子目录中的目录和文件
对于目录中还有目录的指定文件夹,只要使用同一个列出目录功能的函数即可
即是函数本身调用本身,称之为递归调用
例子:
import java.io.*class FileDemo{ public static void main(String argsp[]){ File dir = new File("D:\\abc"); showDir(dir); } public static void showDir(File dir){ System.out.println(dir); File[] files = dir.listFiles(); for(int i=0;i<files.length;i++){ if(files[i].isDirectory()) showDir(files[i]); else System.out.println(files[x]); } }}
递归注意事项:
1,限定条件
2,递归的次数 尽量避免内存溢出(递归次数比较多的话 内存溢出)
其中listFiles() 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件
如果要遍历目录中后缀名为同一类文件的话 可以使用listFiles(FilenameFilter filter) 这个方法
需求 : 删除一个带内容的目录
原理: 删除目录从子目录开始 从里往外删除 也需要用到递归调用
import java.io.* class FileDemo_2{ public static void main(String argsp[]){ File dir = new File("D:\\test"); removeDir(dir); } public static void removeDir(File dir){ File[] files = dir.listFiles(); for(int i=0;i<files.length;i++){ if(files[i].isDirectory()) removeDir(files[i]); else files[i].delete(); } dir.delete(); } }
注意:平常有些文件夹是删不掉的,当文件夹里有隐藏文件 或 受系统保护的文件,可以在前面添加
一个判断条件,判断文件时候隐藏!
- 黑马程序员__关于学习File类对文件目录操作的总结
- 黑马程序员__关于学习File类的总结
- 黑马程序员__关于学习Properties的学习总结
- 黑马程序员__关于学习流操作基本规律的总结
- 黑马程序员__关于学习Date类、Calendar类的总结
- 黑马程序员__关于学习Java中IO流的FileWriter的总结
- 黑马程序员__关于学习Java的IO流中FileReader的总结
- 黑马程序员__关于学习IO流字符流的缓冲区总结
- 黑马程序员__关于学习IO流中的字节流的总结
- 黑马程序员__关于学习Java基础加强的总结_1
- 黑马程序员__关于学习Java基础加强的总结_2
- 黑马程序员__关于学习7k月薪面试题破解的总结
- 黑马程序员---关于对ADO.Net学习的总结
- 黑马程序员学习总结__多线程
- 黑马程序员-File类文件操作
- (黑马程序员)File类学习总结
- 黑马程序员--对File类的理解
- 黑马程序员--学习笔记--IO流File文件操作
- python string 中查找中文字符串
- JDBC连接MySQL数据库及示例
- Java笔记8 面试技巧<1>交通灯
- EM算法
- AS 数组
- 黑马程序员__关于学习File类对文件目录操作的总结
- 出错回滚的方法
- ajax无刷新的三级联动
- flare3D 个人原创论坛
- Spiral Matrix
- 浅析一道多线程笔试题
- Android开发准备工作简单啦!---Android开发环境搭建及配置
- HDU1010:Tempter of the Bone(DFS)
- ScriptCase的多语言支持