文件管理器--取得文件系統的可用大小,取得文件或文件夾的大小

StatFs類:

/**

 * Retrieve overall information about the space on a filesystem.  This    *  is a

 * Wrapper for Unix statfs().

 */

檢索整個文件系統的空間信息,是對Unixstatfs()函數的封裝開發中可用這個類取得文件系統的可用大小等。


//遞歸取得文件或文件夾的大小
	public static long fileLength(File file) {
		long length = 0;
		if(file == null || !file.exists()){
			return 0;
		}
		
		if(file.isFile()){
			length = file.length();
		}else if(file.isDirectory()){
			File[] files = file.listFiles();
			for(int i = 0; files != null && i < files.length; i++){
				length = length + fileLength(files[i]); 
			}
		}
		return length;
	}

//取得文件系統的可用空間
public static long availableSize(File mCurrentDirectory) {
        StatFs stat = new StatFs(mCurrentDirectory.getPath());

        long blockSize = stat.getBlockSize();
        long availableBlocks = stat.getAvailableBlocks();
		long availableSize = blockSize * availableBlocks;
		
		return availableSize;
	}


發佈了44 篇原創文章 · 獲贊 56 · 訪問量 28萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章