4
A
回答
15
我用下面的擴展方法做到這一點:
public static long Size(this DirectoryInfo Directory, bool Recursive = false)
{
if (Directory == null)
throw new ArgumentNullException("Directory");
return Directory.EnumerateFiles("*", Recursive ? SearchOption.AllDirectories : SearchOption.TopDirectoryOnly).Sum(x => x.Length);
}
2
您需要遞歸地枚舉文件夾中,總結了文件大小。請記住包含正確大小的系統文件和隱藏文件。
下面是一個簡單的版本:
long GetFolderSize(string path)
{
DirectoryInfo d = new DirectoryInfo(path);
var files = d.GetFiles("*", SearchOption.AllDirectories);
return files.Sum(fi => fi.Length);
}
請記住,一個文件可能佔用更多的空間磁盤比它的長度上,因爲一個文件總是佔用文件系統上塊的整數(以對你的應用很重要的情況)。
2
您需要從您的目錄(包括子目錄)中獲取所有文件,並在sum循環中獲取它們的大小。例如:
static long GetDirectorySize(string path)
{
string[] files = Directory.GetFiles(path, "*.*", SearchOption.AllDirectories);
long size = 0;
foreach (string name in files)
{
FileInfo info = new FileInfo(name);
size += info.Length;
}
return size;
}
+0
不包括子目錄。 – driis
+0
@driis,修正它。 –
相關問題
- 1. 確定文件夾大小
- 2. 計算大小文件夾python
- 3. 計算和緩存文件夾大小
- 4. 計算文件夾大小:空文件夾具有默認大小?
- 5. `find'如何計算文件的大小?
- 6. 如何計算音頻文件大小?
- 7. 如何計算protobuf文件大小?
- 8. 如何計算文件夾的大小。 (這個大小必須與Finder一致。)
- 9. 在java中計算S3對象(文件夾)大小
- 10. 在PostgreSQL中計算文件大小
- 11. 如何通過文件夾重複並確定該文件夾的大小?
- 12. 在.NET 4.0中計算文件夾文件的最快方法
- 13. 如何使用FileSystemObject.Size可靠地確定文件夾大小?
- 14. ios - 計算照片文件夾中的總圖像大小
- 15. 如何在matlab中計算jpeg2000文件頭大小?
- 16. 如何計算UWP/Windows Phone Scale文件夾中資產的大小
- 17. 計算shell中文件的大小
- 18. 確定Outlook文件夾中電子郵件的大小?
- 19. 在VB.NET中確定文件大小
- 20. 如何計算文件夾中有多少個文件夾vb.net
- 21. 爲什麼這不正確地計算文件夾的總大小?
- 22. 如何計算.net窗體窗體的最小_client_大小?
- 23. MongoDB如何計算文檔的大小?
- 24. 如何確定.Net中項目文件夾的路徑?
- 25. Bash確定文件大小
- 26. Javascript - 確定文件大小
- 27. 計算文件夾大小並同時顯示(多線程Java)
- 28. Java文件夾大小估計
- 29. 在壓縮文件夾之前和之後計算文件大小
- 30. 在尋呼系統中確定幀大小和其他計算
這給了最小的磁盤空間。不考慮塊大小,也不佔用目錄本身使用的空間。 –