zoukankan      html  css  js  c++  java
  • .Net 2.0中的DriveInfo类

    在.Net 1.1中,要获得磁盘信息,只有通过Win32的API来获得,例如:

    //获取磁盘剩余空间;
    [DllImport( "kernel32.dll", EntryPoint="GetDiskFreeSpaceA" )]
    public static extern int GetDiskFreeSpace(string lpRootPathName,ref int lpSectorsPerCluster,
                                                                                                               
    ref int lpBytesPerSector,
                                                                                                               
    ref int lpNumberOfFreeClusters,
                                                                                                               
    ref int lpTotalNumberOfClusters);

    //获取磁盘类型;
    [DllImport( "kernel32.dll", EntryPoint="GetDriveTypeA" )]
    public static extern int GetDriveType(string nDrive);

    然而在.Net2.0中,不需要做这些烦人的工作,它已经将这些Win32的API放到了Framework的类库中。在命名空间System.IO下有DriveInfo类,该类分别包括属性:TotalSize,TotalFresSpace,AvailableFreeSpace,DriveFormat,DriveType,VolumeLabel等属性。现在要获得有关磁盘的信息,就非常容易了。

    using System.IO;

    string driveName = "C:\\";
    DriveInfo driveInfo 
    = new DriveInfo(driveName);

    Console.WriteLine(
    "The volume name is {0}",driveInfo.VolumeLabel);
    Console.WriteLine(
    "The total space is {0}",driveInfo.TotalSize);
    Console.WriteLine(
    "The free space is {0}",driveInfo.TotalFreeSpace);

    另外,DriveInfo类还有一个静态方法GetDrives(),它能获得当前计算机所有驱动器的信息:

    DriveInfo[] drives = DriveInfo.GetDrives();

    不知道.Net2.0又封装了多少.Net 1.1版本未曾实现的Win32 API呢?这还需要我们慢慢的去发掘啊。
  • 相关阅读:
    Spring中Bean及@Bean的理解
    Visual Studio(VS)秘钥集合
    PLC不能初始化问题
    【原创】C# API 未能创建 SSL/TLS 安全通道 问题解决
    【原创】XAF CriteriaOperator 使用方式汇总
    【原创】.Net WebForm Calendar 日历控件常用方法
    【原创】XAF常用属性字段设置
    【记录】Windows 操作系统常用快捷命令
    【XAF】常见错误以及对应解决方法
    【原创】XAF ITreeNode+NonPersistent 使用方式
  • 原文地址:https://www.cnblogs.com/wayfarer/p/221795.html
Copyright © 2011-2022 走看看