File遍历目录
来源:互联网 发布:javascript案例教程 编辑:程序博客网 时间:2024/05/17 03:52
File的过滤,遍历等操作
列出指定目录下的(包括子目录)的所有文件
File file = new File();
exists() 方法用于判断文件或目录是否存在
isDirectory()方法判断File类的对象是否是目录
throw new IllegalArgumentException();抛出异常
String[] filenames = file.list() //返回的是字符串数组,列出当前目录下的所有子目录和文件,不包含子目录下的内容
//递归
for(String string : filenames){//将filenames数组中的值,循环赋值给string,直到filenames为空时,结束循环
System.out.println(string);
}
//如果要遍历目录下的内容就需要构造成File对象做递归操作,File提供了直接返回File对象的API
File[] files = file.listFiles(); //返回的是直接子目录(文件)的抽象
//递归,遍历出该目录下所有文件信息,包括子目录下的文件
for(File f :files){
if(f.isDirectory){
//递归遍历该目录下的子目录的信息
listDirectory(file);
}
else{
System.out.pritln(file);
}
}
贴出代码
public class FileUtils { //列出指定目录下,包括子目录下的所有文件 public static void listDirectory(File dir)throws IOException{ //如果目录不存在,抛出异常给提示 if(!dir.exists()){ throw new IllegalArgumentException("目录"+dir+"不存在"); } //如果dir不是目录,抛出异常给提示 if(!dir.isDirectory()){ throw new IllegalArgumentException(dir+"不是目录"); } String[]filename=dir.list();//返回的是字符串数组,子目录名称,不包含子目录下的内容 for (String filedir : filename) { System.out.println(dir+"\\"+filedir); } //如果要遍历子目录下的内容,就需要遍历file对象做递归操作 //file提供了直接返回file对象的api File[] file=dir.listFiles();//返回子目录(文件)的对象 //如果子目录长度大于0并且不为空,就代表存在 if(file.length>0&&file!=null){ //遍历打印出子目录 for (File file2 : file) { if(file2.isDirectory()){//拿到目录,false递归, //递归 listDirectory(file2); }else{ System.out.println(file); } } } } }
public class FileDemo { public static void main(String[] args) { try { FileUtils.listDirectory(new File("/Users/ldq/Documents/Demotest")); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }}}
0 0
- File类遍历目录
- File遍历目录
- File类遍历目录
- File类实现目录遍历
- file : 遍历删除目录中的文件
- JAVA中File类遍历目录解析
- File类遍历目录代码示例
- file类的遍历文件与目录
- 根据路径遍历目录下所有文件File类
- File递归遍历目录,返回文件夹及文件
- java基础 - file类(递归遍历目录)
- File(遍历一个目录下的所有文件)
- 遍历目录
- 遍历目录
- 遍历目录
- 遍历目录
- 遍历目录
- 目录遍历
- vs创建三层模式网站
- 调用svc报错 httpwebrequest_webexception_remoteserver
- 非聚集索引查找转非聚集索引扫描
- myeclipse各种版本激活码和激活工具,自动生成激活码工具
- 使用 RequireJS 优化 Web 应用前端
- File遍历目录
- linux在虚拟终端中的一些快捷方式
- mysql事物
- ScrollViewer的滚动问题(ScrollViewer里添加stackPanel,再加俩个listbox无法滚动的问题)
- gcc预编译#if,#elif,#endif以及常用宏定义
- 杨辉三角
- PyQt基础第1篇——QWidget,QDialog,QMainWindow介绍
- eclipse中设置java虚拟机内存
- Mac环境使用Android Studio进行android手机调试