java遍历文件夹下所有图片_JAVA 遍历文件夹下的所有文件
JAVA遍历文件下的所有文件和文件夹
@Test
public void traverseFolder1( ) {
String path = "D:\\TEST";
int fileNum = 0;
int folderNum = 0;
int foldeNum = 0;
File file = new File(path);
if (file.exists()) {
LinkedList list = new LinkedList();
//list()方法是返回某个目录下的所有文件和目录的文件名,返回的是String数组
//listFiles()方法是返回某个目录下所有文件和目录的绝对路径,返回的是File数组
File[] files = file.listFiles();
for (File file2 : files) {
if (file2.isDirectory()) {
System.out.println("文件夹:" + file2.getAbsolutePath());
list.add(file2);
foldeNum++;
} else {
System.out.println("文件:" + file2.getAbsolutePath());
fileNum++;
}
}
File temp_file;
while (!list.isEmpty()) {
temp_file =
list.removeFirst();//删除第一个元素,也就是找到数组中的第一个元素返回一个File去判断,说白了就是循环分别找到每个文件下面对应的是文件还是文件夹,如果循环下一级还是文件夹则继续循环直到结束(思想就是一层一层去判断查找知道找到所有的文件和文件夹,不明白看下面的例子。)
files = temp_file.listFiles();
for (File file2 : files) {
if (file2.isDirectory()) {//如果是个目录(文件夹)则返回true
System.err.println("文件夹:" + file2.getAbsolutePath());
list.add(file2);
folderNum++;
} else {//输出文件
System.out.println("文件:" + file2.getAbsolutePath());//返回文件的完整路径。
fileNum++;
}
}
}
} else {
System.out.println("文件不存在!");
}
System.out.println("文件夹共有:" + folderNum + ",文件共有:" + fileNum);
}
例子:
LinkedList list=new LinkedList();
list.add("a");
list.add(1);
list.add('b');
String kk=(String) list.removeFirst(); // (String) 这代表强制转换 原理同上
char k=(char) list.removeLast();//删除最后一个元素
System.out.println(kk);
System.out.println(k);
}
}
结果为 a b
//使用递归
public voidtraverseFolder2(String path) {
File file = newFile(path);
if(file.exists()) {
File[] files =file.listFiles();
if (null == files || files.length == 0) {
System.out.println("文件夹是空的!");
return;
} else{
for(File file2 : files) {
if(file2.isDirectory()) {
System.out.println("文件夹:" +file2.getAbsolutePath());
traverseFolder2(file2.getAbsolutePath());
} else{
System.out.println("文件:" +file2.getAbsolutePath());
}
}
}
} else{
System.out.println("文件不存在!");
}
}
java遍历文件夹下所有图片_JAVA 遍历文件夹下的所有文件相关推荐
- java遍历文件夹下的_Java遍历文件夹下的所以文件
利用Java递归遍历文件夹下的所以文件,然后对文件进行其他的操作.如:对文件进行重命名,对某一类文件进行重编码.可以对某一工程下的全部.java文件进行转码成utf-8等 代码如下,这里只对文件进行重 ...
- java微信支付 需要证书吗_java引用微信支付的p12证书文件
最近对接微信支付的退款功能,其中涉及到引用证书文件. 1. 绝对路径: //windows: public static String PATH1 = "E:\project_ceshi\a ...
- java文件读写的基本类_java常用工具类(三)—— 文件读取的操作类
定义常用的文件类型 public class FileType { /** * 文件头类型 */ public static final String XML_FILE = "text/xm ...
- java遍历map前n项_Java遍历Map的几种方式
日常开发中,遍历Map是很常见的操作,在Java中有几种方式可以实现.在此记录一下. Map map = new HashMap<>(); map.put(1997L, "牛&q ...
- java 遍历map并比较值_Java遍历Map,List的不同方法,并比较其性能
最近在做文本分析相关的实验,统计词频,情感度量许多数据预处理的工作要用到集合类的遍历,借这个机会也好好复习了一下Java中Map,List的用法. 1. Map的遍历 Map这种集合不能直接取出元素, ...
- java中相对路径怎么写_java中如何使用相对路径读取文件
java中使用相对路径读取文件的方法:1.使用文件[File file = new File("src/test.txt")]方法:2.使用类的相对路径:3.使用当前线程的类加载器 ...
- java中 复制到下一行_java代码复制到下一行
java代码复制到下一行 [2021-02-10 13:04:40] 简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace("/( ...
- java 将光标移至行首_Java:将条件移至消息文件
java 将光标移至行首 Java类ResourceBundle和MessageFormat提供了一个很好的工具集,用于解决Java应用程序内部的本地化消息. 这篇文章提供了一个小示例,说明如何使用C ...
- java导出html word文档_java生成带html样式的word文件
最近在项目中需要将通过富文本编辑器处理过的文字转换为Word,查了很久,大家通常的解决办法是使用Jacob或POI等组件直接生成Word,但是都无法将富文本编辑器处理过的文字保留样式并保存为Word, ...
最新文章
- oracle 创建数据库 表空间 用户 授权和toad导入导出数据库
- ts文件编译后变量在vscode里报错
- linux : 各个发行版中修改python27默认编码为utf-8
- Cibersort免疫浸润的在线分析及R语言代码实现
- 基金指数温度怎么算_壁挂炉采暖费怎么算?从两千到八百,内行人教你别再花冤枉钱...
- UVA10990 Another New Function【欧拉函数打表】
- Gravatar是什么?全球通用头像简单介绍与使用教程
- 如何使用JS实现页面内容随机显示
- 安卓手机反应慢又卡怎么办_安卓手机出现卡顿反应慢的具体处理方法
- Win10下载的文件如何解除锁定?Win10系统解除锁定下载的文件方法
- 关于EmmyLua插件创建Lua脚本Require失败的问题
- VS2008当前页面脚本发生错误
- CSS里的BFC和IFC的用法
- 家庭影院投影仪哪款值得买?2022年双11家庭影院4K投影仪首选当贝X3 Pro
- 手机号码是如何构成的?
- eureka client无法启动,java.lang.IllegalStateException: Failed to introspect Class
- 【HTML------樱花雨】
- 5 月计算机语言排行,TIOBE 5月编程语言排行榜
- 解决matlab错误使用 mex 未找到支持的编译器或 SDK一系列问题
- 网络基础知识问答梳理