C#获取磁盘空间信息的几个方法
发布日期:2021-11-07 06:40:18
浏览次数:5
分类:技术文章
本文共 1646 字,大约阅读时间需要 5 分钟。
今天本来想找一个在磁盘拷贝的过程中快速获取磁盘大小信息的方法,可惜这几个方法都不给力,拷贝中获取信息依然很慢。纠结。
1、C#DriveInfo类获取DriveInfo driveinfo = new DriveInfo(@"C:\");driveinfo.AvailableFreeSpace;driveinfo.TotalSize;
2、调用系统DLL方法
[DllImport("kernel32.dll")] public static extern bool GetDiskFreeSpaceEx( string lpDirectoryName, out UInt64 lpFreeBytesAvailable, out UInt64 lpTotalNumberOfBytes, out UInt64 lpTotalNumberOfFreeBytes);
调用
public static void GetDriveInfoDetail(string driveName) { ulong availablefreeBytes = 0; ulong totalNumberOfBytes = 0; ulong totalNumberOfFreeBytes = 0; GetDiskFreeSpaceEx( driveName, out availablefreeBytes, out totalNumberOfBytes, out totalNumberOfFreeBytes); }
3、ManagementObjectSearcher查询方法
public static void GetDriveInfoDetail(string driveName) { WqlObjectQuery wqlObjectQuery = new WqlObjectQuery(string.Format("SELECT * FROM Win32_LogicalDisk WHERE DeviceID = '{0}'", driveName.Substring(0, 2))); ManagementObjectSearcher managerSearch = new ManagementObjectSearcher(wqlObjectQuery); ListdriveInfoList = new List (2); foreach (ManagementObject mobj in managerSearch.Get()) { Console.WriteLine("Description: " + mobj["Description"]); Console.WriteLine("File system: " + mobj["FileSystem"]); Console.WriteLine("Free disk space: " + mobj["FreeSpace"]); Console.WriteLine("Size: " + mobj["Size"]); } }
代码下载:
转载地址:https://blog.csdn.net/yysyangyangyangshan/article/details/7387864 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2024年04月17日 20时59分10秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
11 Python总结之股票数据量化分析
2019-04-26
12 Python总结之蒙特卡洛模拟
2019-04-26
13 Python总结之估值
2019-04-26
14 Python总结之风险管理
2019-04-26
15 Python总结之数据分析与挖掘
2019-04-26
16 Python总结之舆情时间序列可视化
2019-04-26
数据结构和算法的知识图谱
2019-04-26
人工智能技术知识图谱
2019-04-26
机器学习算法之KNN
2019-04-26
实战六:手把手教你用TensorFlow进行手写数字识别
2019-04-26
实战七:手把手教你用TensorFlow进行验证码识别(上)
2019-04-26
机器学习算法之梯度下降法
2019-04-26
机器学习算法之多项式回归
2019-04-26
TensorFlow(keras)入门课程--01 机器学习的Hello World
2019-04-26
TensorFlow(keras)入门课程--03 卷积介绍
2019-04-26
TensorFlow(keras)入门课程--04 卷积神经网络
2019-04-26
TensorFlow(keras)入门课程--05 复杂图像处理
2019-04-26
TensorFlow(keras)入门课程--06 CNN用于猫狗数据集
2019-04-26
【比赛篇】TinyMind人民币面值 - 热身赛
2019-04-26
卷积神经网络交通标志识别
2019-04-26