【Java API】java获取文件大小的方法&java删除所有文件
2017-07-21 10:49
549 查看
很基础的一篇文章,获取一个目录下文件的大小
一开始看File类的方法
这几个方法并不能获取file下所有文件的大小,只能获取file所在分区的信息,getUsableSpace()和getFreeSpace()一个是可用大小一个是剩余大小,有人会说剩余大小不就是可用大小么?其实不一定所有的剩余空间我们都可用,有一些是留给系统来存放一些信息的。
那么如何获取这个file目录下的大小呢?不废话上代码!
另外这个方法稍加改造就能变成删除这个目录下所有文件
一开始看File类的方法
file.getTotalSpace() //获取当前file所在分区的总大小,单位是字节 file.getUsableSpace()//获取当前file所在分区的可用大小,单位是字节 file.getFreeSpace()//获取当前file所在分区的剩余大小,单位是字节
这几个方法并不能获取file下所有文件的大小,只能获取file所在分区的信息,getUsableSpace()和getFreeSpace()一个是可用大小一个是剩余大小,有人会说剩余大小不就是可用大小么?其实不一定所有的剩余空间我们都可用,有一些是留给系统来存放一些信息的。
那么如何获取这个file目录下的大小呢?不废话上代码!
public static long getFileSize(File file) { if (file == null) { return 0; } long totalsize = 0; if (file.isDirectory()) { File[] files = file.listFiles(); int length = files.length; for (int i = 0; i < length; i++) { File f = files[i]; if (f.isDirectory()) {//如果是文件夹就递归调用 totalsize += getFileSize(f); } else { totalsize += f.length(); } } } else { totalsize = file.length(); } return totalsize; }
另外这个方法稍加改造就能变成删除这个目录下所有文件
public static void clearFile(File file) { if (file == null) { return; } if (file.isDirectory()) { File[] files = file.listFiles(); int length = files.length; for (int i = 0; i < length; i++) { File f = files[i]; if (f.isDirectory()) { clearFile(f); f.delete(); } else { f.delete(); } } } else { file.delete(); } }
相关文章推荐
- iOS 获取文件大小fileSize && 文件删除
- 遇到问题---java获取网络文件大小失败getContentLength()为-1 完整解决方法
- 遇到问题---java获取网络文件大小失败getContentLength()为-1 完整解决方法
- Java中获取文件大小的正确方法
- java/android 统计文件夹大小及删除文件夹下所有文件和路径
- Java中获取文件大小的正确方法
- android java file 清理垃圾获取文件大小 删除文件等操作
- Java中获取文件大小的正确方法
- Java中获取文件大小的正确方法
- android java file 清理垃圾获取文件大小 删除文件等操作
- Java中获取文件大小的正确方法
- Java中获取文件大小的正确方法
- Java中获取文件大小的正确方法
- Java中获取文件大小的正确方法
- Java 获取目录所有文件,删除文件。
- Java中获取文件大小的正确方法
- java/android 统计文件夹大小及删除文件夹下所有文件和路径
- Java中获取文件大小的正确方法
- JavaSE 文件递归之删除&获取文件夹目录中所有的以.jpg的文件的绝对路径
- 【Android笔记】Android统计文件夹大小,删除文件夹下的所有文件方法