获取当前电脑的盘符情况,如果C盘,D盘,只需要一句简单的代码搞定
string[] drives = Environment.GetLogicalDrives();
如果想获取当前电脑各个盘的使用情况等,则需要使用到 ManagementClass 初始化 Win32_LogicalDisk,然后遍历获取 Name, Description , FileSystem ,FreeSpace, Size 等信息
/// <summary>
/// 盘符分区
/// </summary>
/// <returns></returns>
public static string GetLogicalDiskPartition()
{
ManagementClass mangnmt = new ManagementClass("Win32_LogicalDisk");
ManagementObjectCollection mcol = mangnmt.GetInstances();
StringBuilder sb = new StringBuilder();
foreach (ManagementObject strt in mcol)
{
var serialNumber = Convert.ToString(strt["VolumeSerialNumber"]);
// 盘符名称
var n = strt["Name"];
// 磁盘类型
var d = strt["Description"];
// 文件系统(分区类型、格式)
var fs = strt["FileSystem"];
// 可用空间
var fr = Convert.ToInt64(strt["FreeSpace"]) / 1024 / 1024 / 1024;
// 总空间
var s = Convert.ToInt64(strt["Size"]) / 1024 / 1024 / 1024;
sb.AppendLine($"盘符{n}>>{d},文件系统{fs},可用空间{fr}GB,总空间{s}GB");
sb.AppendLine();
}
return sb.ToString();
}
以下是部分代码运行后的效果: