源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C#实现获取磁盘空间大小的方法

  • 时间:2022-04-22 08:02 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C#实现获取磁盘空间大小的方法
本文实例讲述了C#实现获取磁盘空间大小的方法。分享给大家供大家参考。具体实现方法如下: 方法一:利用System.IO.DriveInfo.GetDrives方法来获取
[u]复制代码[/u] 代码如下:
///   /// 获取指定驱动器的空间总大小(单位为B) ///   ///  只需输入代表驱动器的字母即可 (大写) ///    public static long GetHardDiskSpace(string str_HardDiskName) {     long totalSize= new long();     str_HardDiskName=str_HardDiskName +":\\";     System.IO.DriveInfo[] drives = System.IO.DriveInfo.GetDrives();     foreach (System.IO.DriveInfo drive in drives)     {  if (drive.Name == str_HardDiskName)  {      totalSize = drive.TotalSize / (1024 * 1024 * 1024);  }     }     return totalSize; } ///   /// 获取指定驱动器的剩余空间总大小(单位为B) ///   ///  只需输入代表驱动器的字母即可  ///    public static long GetHardDiskFreeSpace(string str_HardDiskName) {     long freeSpace = new long();     str_HardDiskName = str_HardDiskName + ":\\";     System.IO.DriveInfo[] drives = System.IO.DriveInfo.GetDrives();     foreach (System.IO.DriveInfo drive in drives)     {  if (drive.Name == str_HardDiskName)  {      freeSpace = drive.TotalFreeSpace / (1024 * 1024 * 1024);  }     }     return freeSpace; }
方法二:利用ManagementClass("Win32_LogicalDisk")来获取
[u]复制代码[/u] 代码如下:
List<Dictionary<string, string>> diskInfoDic = new List<Dictionary<string, string>>(); ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk"); ManagementObjectCollection disks = diskClass.GetInstances(); foreach(ManagementObject disk in disks) {  Dictionary<string, string> diskInfo = new Dictionary<string, string>();  try  {      // 磁盘名称      diskInfo["Name"] =disk["Name"].ToString();      // 磁盘描述      diskInfo["Description"]=disk["Description"].ToString();      // 磁盘总容量,可用空间,已用空间      if (System.Convert.ToInt64(disk["Size"]) > 0)      {   long totalSpace = System.Convert.ToInt64(disk["Size"]) / MB;   long freeSpace = System.Convert.ToInt64(disk["FreeSpace"]) / MB;   long usedSpace = totalSpace - freeSpace;        diskInfo["totalSpace"]=totalSpace.ToString();   diskInfo["usedSpace"]=usedSpace.ToString();   diskInfo["freeSpace"]=freeSpace.ToString();      }      diskInfoDic.Add(diskInfo);  }  catch(Exception ex)  {      Throw ex;  } }
希望本文所述对大家的C#程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部