Giới thiệu
Lớp DriveInfo trong namespace System.IO cung cấp phương thức tĩnh GetDrives() để lấy thông tin về tất cả các ổ đĩa trên máy tính.
Ví dụ cơ bản
var drv = DriveInfo.GetDrives();
Duyệt qua từng ổ đĩa để lấy tên:
foreach (DriveInfo dInfo in drv)
{
Console.WriteLine(dInfo.Name);
}
Ví dụ hoàn chỉnh
using System;
using System.IO;
public class Demo
{
public static void Main()
{
var drv = DriveInfo.GetDrives();
foreach (DriveInfo dInfo in drv)
{
Console.WriteLine(dInfo.Name);
}
}
}
Kết quả mẫu
Trên Linux:
/etc/resolv.conf /etc/hostname /etc/hosts /run/secrets /home/cg/root
Trên Windows:
C:\ D:\ E:\
Lưu ý quan trọng
- Kết quả phụ thuộc vào hệ điều hành và cấu hình máy.
- Trên Windows, trả về các ổ đĩa logic (C:, D:, ...).
- Trên Linux/Unix, có thể trả về các điểm mount (mount points).
- Cần xử lý ngoại lệ
IOExceptionhoặcUnauthorizedAccessExceptionkhi truy cập ổ đĩa không có quyền.
Thông tin bổ sung từ DriveInfo
Mỗi đối tượng DriveInfo cung cấp thêm:
DriveType: Loại ổ (Fixed, Removable, Network, CDRom, Ram, Unknown).DriveFormat: Hệ thống tập tin (NTFS, FAT32, ext4, ...).AvailableFreeSpace,TotalFreeSpace,TotalSize: Thông tin dung lượng.IsReady: Kiểm tra ổ đĩa đã sẵn sàng (đặc biệt quan trọng với ổ CD/USB).