我在 sd 卡中有一个文本文件,我想从我的 android 应用程序中以编程方式获取 mb 中文本文件的大小。如何以编程方式获取文本文件的大小(以 MB 为单位)?
问问题
2441 次
3 回答
8
试试下面的代码:
public long fileSizeInKb(String fileName) {
File file = new File(fileName);
long fileSize = file.length();
return fileSize / 1024;
}
如果您仍然面临任何问题,请告诉我。
于 2013-02-11T07:21:56.760 回答
3
使用File类方法public long getTotalSpace()
像,
File file = new File("/mnt/sdcard/temp.txt");
String size = readableFileSize(file.getTotalSpace()); // file.length() alternate
和方法readableFileSize()
public String readableFileSize(long size) {
if(size <= 0) return "0";
final String[] units = new String[] { "B", "KB", "MB", "GB", "TB" };
int digitGroups = (int) (Math.log10(size)/Math.log10(1024));
return new DecimalFormat("#,##0.#").format(size/Math.pow(1024, digitGroups)) + " " + units[digitGroups];
}
于 2013-02-11T07:23:58.277 回答
0
您需要打开文件流,然后像这样检查大小:
File file=new File(Environment.getExternalStorageDirectory(), "lala.txt");
long size = file.length();
有关更多信息,请尝试阅读此处:获取 android sdk 中的文件大小?
于 2013-02-11T07:23:23.053 回答