Android文件夹大小
16lz
2021-01-23
引用方法法如下:private String str_sdcard = "/sdcard" ;Long sd_all_size = FileFolder_All_Size(str_sdcard);double size2 = internal_all_size / 1024.0 ;String sdcardstr = String .format("%.2f",size2); public longFileFolder_All_Size(String path) { File pathFile = new File(path); // 取得sdcard文件路径 android.os.StatFs statfs = newandroid.os.StatFs(pathFile.getPath()); long nTotalBlocks = statfs.getBlockCount(); // 获取SDCard上BLOCK总数 long nBlocSize = statfs.getBlockSize(); // 获取SDCard上每个block的SIZE long nAvailaBlock = statfs.getAvailableBlocks(); // 获取可供程序使用的Block的数量 long nFreeBlock = statfs.getFreeBlocks(); // 获取剩下的所有Block的数量(包括预留的一般程序无法使用的块) long nSDTotalSize = nTotalBlocks * nBlocSize / 1024 / 1024; // 计算SDCard 总容量大小MB return nSDTotalSize; } public longFileFolder_Free_Size(String path) { File pathFile = new File(path); // 取得sdcard文件路径 android.os.StatFs statfs = new android.os.StatFs(pathFile.getPath()); long nTotalBlocks = statfs.getBlockCount(); // 获取SDCard上BLOCK总数 long nBlocSize = statfs.getBlockSize(); // 获取SDCard上每个block的SIZE long nAvailaBlock = statfs.getAvailableBlocks(); // 获取可供程序使用的Block的数量 long nFreeBlock = statfs.getFreeBlocks(); // 获取剩下的所有Block的数量(包括预留的一般程序无法使用的块) long nSDFreeSize = nAvailaBlock * nBlocSize / 1024 / 1024; // 计算 SDCard 剩余大小MB return nSDFreeSize; } public longFileFolder_Used_Size(String path) { File pathFile = new File(path); // 取得sdcard文件路径 android.os.StatFs statfs = newandroid.os.StatFs(pathFile.getPath()); long nTotalBlocks = statfs.getBlockCount(); // 获取SDCard上BLOCK总数 long nBlocSize = statfs.getBlockSize(); // 获取SDCard上每个block的SIZE long nAvailaBlock = statfs.getAvailableBlocks(); // 获取可供程序使用的Block的数量 long nFreeBlock = statfs.getFreeBlocks(); // 获取剩下的所有Block的数量(包括预留的一般程序无法使用的块) long nSDFreeSize = nAvailaBlock * nBlocSize / 1024 / 1024; // 计算 SDCard 剩余大小MB long nSDTotalSize = nTotalBlocks * nBlocSize / 1024 / 1024; // 计算SDCard 总容量大小MB return nSDTotalSize - nSDFreeSize; //return FileFolder_All_Size(path) - FileFolder_Free_Size(path) ; //用这个方法不太好,最好用没有注掉的code,且也可以弄两个变量一减不用函数 } public boolean Sdcard_Exsit() { boolean ret = false ; String sDcString = android.os.Environment.getExternalStorageState(); if(sDcString.equals(android.os.Environment.MEDIA_MOUNTED)) { ret = true ; } return ret; }源地址:http://blog.renren.com/GetEntry.do?id=740412748&owner=220879091
更多相关文章
- android 模拟器中找不到程序
- 程序人生之Android学习路线图
- Android对应用程序的资源文件xml解析的源代码在哪里
- 调用Android installer 安装和卸载程序
- 为什么要在 Windows 10 系统上运行 Android 应用程序?