Windows File System trong C#



C# cho phép bạn làm việc với các thư mục và file bởi sử dụng thư mục và file đa dạng liên quan tới các lớp như: Lớp DirectoryInfo và Lớp FileInfo.

Lớp DirectoryInfo trong C#

Lớp DirectoryInfo được kế thừa từ lớp FileSystemInfo. Nó có nhiều phương thức đa dạng để tạo, di chuyển, và duyệt qua các thư mục và thư mục phụ. Lớp này không thể bị kế thừa.

Dưới đây là một số thuộc tính được sử dụng phổ biến của lớp DirectoryInfo trong C#:

STT Thuộc tính
1 Attributes

Lấy các attibute cho file hoặc thư mục hiện tại

2 CreationTime

Lấy thời gian tạo của file hoặc thư mục hiện tại

3 Exists

Lấy giá trị Boolean chỉ rằng có hay không thư mục là tồn tại

4 Extension

Lấy chuỗi biểu diễn đuôi file

5 FullName

Lấy path đầy đủ của thư mục hoặc file

6 LastAccessTime

Lấy thời gian truy cập lần cuối cùng của file hoặc thư mục hiện tại

7 Name

Lấy tên của instance của lớp DirectoryInfo này

Dưới đây là một số phương thức được sử dụng phổ biến của lớp DirectoryInfo trong C#:

STT Phương thức
1 public void Create()

Tạo một thư mục

2 public DirectoryInfo CreateSubdirectory(string path)

Tạo một thư mục phụ (subdirectory) hoặc các thư mục phụ trên path đã xác định. Path đã xác định này có thể là liên quan tới instance này của lớp DirectoryInfo

3 public override void Delete()

Xóa DirectoryInfo này nếu nó là trống

4 public DirectoryInfo[] GetDirectories()

Trả về các thư mục phụ của thư mục hiện tại

5 public FileInfo[] GetFiles()

Trả về một danh sách File từ thư mục hiện tại

Để có danh sách đầy đủ của các thuộc tính và phương thức của lớp DirectoryInfo, bạn tham khảo Microsoft Documentation về C#.

Quảng cáo

Lớp FileInfo trong C#

Lớp FileInfo trong C# được kế thừa từ lớp FileSystemInfo. Nó có các thuộc tính và phương thức để tạo, sao chép, xóa, di chuyển, và mở các file, và giúp đỡ trong việc tạo các đối tượng FileStream. Lớp này không thể bị kế thừa.

Bảng dưới liệt kê các thuộc tính được sử dụng phổ biến của lớp FileInfo trong C#:

STT Thuộc tính
1 Attributes

Lấy các attribute của file hiện tại

2 CreationTime

Lấy thời gian tạo của file hiện tại

3 Directory

Lấy một instance của thư mục mà sở hữu file đó

4 Exists

Lấy một giá trị Boolean chỉ rằng có hay không file đó là tồn tại

5 Extension

Lấy chuỗi biểu diễn đuôi file

6 FullName

Lấy path đầy đủ của file

7 LastAccessTime

Lấy thời gian truy cập lần cuối của file

8 LastWriteTime

Lấy thời gian thực hiện hoạt động ghi của file

9 Length

Lấy kích cỡ, bằng byte, của file hiện tại

10 Name

Lấy tên của file

Quảng cáo

Dưới đây là các phương thức được sử dụng phổ biến của lớp FileInfo trong C#:

STT Phương thức
1 public StreamWriter AppendText()

Tạo một StreamWriter mà phụ thêm text tới file được biểu diễn bởi instance này của FileInfo

2 public FileStream Create()

Tạo một file

3 public override void Delete()

Xóa một file vĩnh viễn

4 public void MoveTo(string destFileName)

Di chuyển một file cụ thể tới một vị trí mới, cung cấp tùy chọn để xác định một tên file mới

5 public FileStream Open(FileMode mode)

Mở một file trong chế độ đã cho

6 public FileStream Open(FileMode mode, FileAccess access)

Mở một file trong chế độ đã cho: read, write, hoặc read/write

7 public FileStream Open(FileMode mode, FileAccess access, FileShare share)

Mở một file trong chế độ đã cho: read, write, hoặc read/write và tùy chọn chia sẻ đã xác định

8 public FileStream OpenRead()

Tạo một read-only FileStream

9 public FileStream OpenWrite()

Tạo một write-only FileStream

Để có danh sách chi tiết các thuộc tính và phương thức của lớp FileInfo, bạn tham khảo Microsoft Documentation về C#.

Ví dụ

Dưới đây là ví dụ minh họa cách sử dụng các lớp trên trong C#:

using System;
using System.IO;

namespace WindowsFileApplication
{
   class Program
   {
      static void Main(string[] args)
      {
         //tao mot doi tuong DirectoryInfo
         DirectoryInfo mydir = new DirectoryInfo(@"c:\Windows");
         
         // lay cac file trong thu muc nay, bao gom ten va kich co file
         FileInfo [] f = mydir.GetFiles();
         foreach (FileInfo file in f)
         {
            Console.WriteLine("Ten file: {0} Kich co: {1}", file.Name, file.Length);
         }
         
         Console.ReadKey();
      }
   }
}

Khi bạn biên dịch và chạy chương trình, nó hiển thị tên các file và kích cỡ tương ứng trong thư mục Windows.

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập doanh nghiệp với Java. Khóa học có giá chỉ 400K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.

Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp chị Thu, trợ lý anh Tuyền để hỗ trợ thanh toán qua mã QR ngân hàng Việt Nam, fb: https://www.facebook.com/Thule.59

Anh Tuyền, tác giả khóa học, là cựu sinh viên chương trình đào tạo kĩ sư tài năng của đại học Bách Khoa Hà Nội với hơn 5 năm kinh nghiệm đi làm thực tế doanh nghiệp và cũng là Founder website vietjack.com, web giáo dục phổ biến nhất Việt Nam hiện tại (năm 2024). Java cũng là ngôn ngữ lập trình dễ đi xin việc nhất hiện tại, với mức lương cao, hãy nâng cao kiến thức IT của bản thân mình vì một Việt Nam giàu mạnh.

Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com


file_io_trong_csharp.jsp


Tài liệu giáo viên