Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Lấy danh sách ổ đĩa trong C#


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ệ IOException hoặc UnauthorizedAccessException khi 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).