打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Android获取文件夹及文件大小整合成的帮助类
开发中刚用到要判断文件夹大小,觉得还是必要做记录的,所以贴出来分享下。
from:Kevin.Wei
代码片段,双击复制
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
package com.demo.file;
 
import java.io.File;
import java.text.DecimalFormat;
import java.io.FileInputStream;
 
public class GetFileSizeUtil {
 
private static GetFileSizeUtil instance;
 
public GetFileSizeUtil() {
}
 
public static GetFileSizeUtil getInstance() {
if (instance == null) {
instance = new GetFileSizeUtil();
}
return instance;
}
 
/*** 获取文件大小 ***/
public long getFileSizes(File f) throws Exception {
long s = 0;
if (f.exists()) {
FileInputStream fis = null;
fis = new FileInputStream(f);
s = fis.available();
} else {
f.createNewFile();
System.out.println("文件不存在");
}
return s;
}
 
/*** 获取文件夹大小 ***/
public long getFileSize(File f) throws Exception {
long size = 0;
File flist[] = f.listFiles();
for (int i = 0; i < flist.length; i++) {
if (flist<i>.isDirectory()) {
size = size + getFileSize(flist<i>);
} else {
size = size + flist<i>.length();
}
}
return size;
}
 
/*** 转换文件大小单位(b/kb/mb/gb) ***/
public String FormetFileSize(long fileS) {// 转换文件大小
DecimalFormat df = new DecimalFormat("#.00");
String fileSizeString = "";
if (fileS < 1024) {
fileSizeString = df.format((double) fileS) + "B";
} else if (fileS < 1048576) {
fileSizeString = df.format((double) fileS / 1024) + "K";
} else if (fileS < 1073741824) {
fileSizeString = df.format((double) fileS / 1048576) + "M";
} else {
fileSizeString = df.format((double) fileS / 1073741824) + "G";
}
return fileSizeString;
}
 
/*** 获取文件个数 ***/
public long getlist(File f) {// 递归求取目录文件个数
long size = 0;
File flist[] = f.listFiles();
size = flist.length;
for (int i = 0; i < flist.length; i++) {
if (flist<i>.isDirectory()) {
size = size + getlist(flist<i>);
size--;
}
}
return size;
}
 
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
JAVA文件复制、目录搜索、扩展名比较的应用
Java 判断文件夹、文件是否存在、否则创建文件夹
shell对文件或文件夹存在性的判断
多文件夹下Excel指定列的提取合并
零代码编程:用ChatGPT批量删除Excel文件中的行
Primitive File Size Chart – 朴素的文件大小查看工具
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服