苟哥的笔记本
首页
文章归档
关于
文章归档
关于
首页
编程
正文
找出一个文件夹下的最大和最小文件
苟哥
2019-12-05 PM
1099℃
0条
记录一下使用Java获取一个文件夹(及其子文件夹)下的最大文件和最小文件。核心思想是对File类的方法进行灵活的调用,主要用到File类的以下几个方法: - exists(): 判断文件/文件夹是否存在 - isFile(): 判断是否是文件 - isDirectory(): 判断是否是文件夹 - length(): 获取文件大小(单位b) 具体实现代码及注释如下: ```java package io; import java.io.File; public class TestFile { public static void main(String[] args) { TestFile.listFiles("D:/path"); } public static int listFiles(String path) { File dir = new File(path); if(! dir.exists()) { System.out.println(path + "不存在"); return 0; } if(! dir.isDirectory()) { System.out.println(path + "不是文件夹"); return 0; } String [] fileList = dir.list(); //得到path下的文件及子目录 if(fileList.length < 1) { System.out.println("当前目录是空目录"); return 0; } File f = new File(dir, fileList[0]); long [] arrSize = { f.length(), f.length()}; //存放最大值和最小值 String[] arrName = { fileList[0], fileList[0] }; //存放最大文件名和最小文件名 TestFile.getMaxAndMin(dir, arrSize, arrName); System.out.println("最大的文件是:"+arrName[0]+"("+arrSize[0]+")"); System.out.println("最小的文件是:"+arrName[1]+"("+arrSize[1]+")"); return 1; } /** * 递归法获取最大和最小文件 * @param dir * @param arrSize * @param arrName */ public static void getMaxAndMin(File dir, long [] arrSize, String [] arrName) { String [] fileList = dir.list(); File f; for (int i = 1; i < fileList.length; i++) { f = new File(dir, fileList[i]); if(f.isFile()) { if(f.length() > arrSize[0]) { arrSize[0] = f.length(); arrName[0] = fileList[i]; } if(f.length() < arrSize[1]) { arrSize[1] = f.length(); arrName[1] = fileList[i]; } }else { TestFile.getMaxAndMin(f, arrSize, arrName); //文件夹的话继续执行当前方法 } } } } ```
标签:
Java
,
File
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:
http://www.i366211.com/archives/42/
上一篇
Java异常的分类
下一篇
使用Java Socket演示客户端与服务端的一问一答
取消回复
评论啦~
提交评论
栏目分类
软件安装
10
开发工具
8
算法
2
测试
1
架构
3
填坑记
2
开源
6
科普
6
私域
2
读书笔记
4
编程
48
运营
3
管理
1
标签云
算法
C程序设计语言
C语言
Java
mysql
PHP
ffmpeg
golang
VueJs
脚手架
VueJs实战项目
Intellij IDEA
Centos7
Hyperf
抖音运营
杰克韦尔奇
跌荡一百年
生成海量测试数据
企业管理
习题2-3
习题2-4
习题2-6
异常分类
File
习题2-7
习题2-8
习题2-9
习题3-3
习题3-4
习题3-5
友情链接
申请
SaaS引擎
机器人框架
京东捡漏