使用C#获取有关磁盘驱动器的信息例如大小和可用空间
这个示例返回有关磁盘驱动器的信息,包括:
- 名称
- 总大小
- 总剩余大小
- 可用空间
- 格式
- 类型(硬盘或 CD ROM)
- 是否可用?
- 根目录
- 卷标
该程序使用System.IO命名空间中的对当程序启动时,它使用以下代码将系统上可用的驱动器添加到名为cboDrive的组合框中。象,因此它包含以下语句以使使用该命名空间更容易。
using System.IO;
当您选择一个驱动器时,以下代码会显示有关它的信息。
// Make a list of drives.
private void Form1_Load(object sender, EventArgs e)
{
foreach (DriveInfo di in DriveInfo.GetDrives())
{
cboDrive.Items.Add(di.Name);
cboDrive.SelectedIndex = 0;
}
}
// Display information about the selected drive.
private void cboDrive_SelectedIndexChanged(object sender, EventArgs e)
{
string drive_letter = cboDrive.Text.Substring(0, 1);
DriveInfo di = new DriveInfo(drive_letter);
lblIsReady.Text = di.IsReady.ToString();
lblDriveType.Text = di.DriveType.ToString();
lblName.Text = di.Name;
lblRootDirectory.Text = di.RootDirectory.Name;
if (di.IsReady)
{
lblDriveFormat.Text = di.DriveFormat;
lblAvailableFreeSpace.Text = di.AvailableFreeSpace.ToString();
lblTotalFreeSize.Text = di.TotalFreeSpace.ToString();
lblTotalSize.Text = di.TotalSize.ToString();
lblVolumeLabel.Text = di.VolumeLabel;
}
else
{
lblDriveFormat.Text = "";
lblAvailableFreeSpace.Text = "";
lblTotalFreeSize.Text = "";
lblTotalSize.Text = "";
lblVolumeLabel.Text = "";
}
}
此代码会创建一个代表所选驱动器的DriveInfo对象,然后使用该对象的属性来了解该驱动器。这里唯一的技巧是,代码会在访问驱动器的其他一些属性之前检查驱动器的IsReady属性。如果驱动器尚未准备好,其中一些属性会引发异常。(例如,如果驱动器是空的 DVD 驱动器。)
下载示例进行试验并查看更多详细信息。