Hướng dẫn file i/o trong c++

Một file là một tập hợp dữ liệu được lưu trữ trên ổ đĩa với một tên cụ thể và một đường dẫn (path) thư mục. Khi một file được mở để đọc hoặc ghi, nó trở thành một luồng (stream).

Về cơ bản, stream là dãy các byte truyền qua path. Có hai stream quan trọng: Input stream và Output stream. Input stream được sử dụng để đọc dữ liệu từ file (hành động read) và Output stream được sử dụng để ghi vào trong file (hành động write).

Các lớp I/O trong C#

Namespace System.IO có nhiều lớp khác nhau, được sử dụng để thực hiện những thao tác với file, như tạo và xóa file, đọc và ghi một file, đóng một file…

Bảng sau hiển thị một số lớp non-abstract được sử dụng phổ biến trong namespace System.IO trong C#:

I/O ClassMô tảBinaryReaderĐọc dữ liệu gốc (primitive data) từ một luồng nhị phân (binary stream).BinaryWriterGhi dữ liệu gốc trong định dạng nhị phân.BufferedStreamBộ nhớ tạm thời cho các byte của một stream.DirectoryGiúp điều khiển cấu trúc thư mục.DirectoryInfoDùng để thực hiện các hoạt động trên các thư mục.DriveInfoCung cấp thông tin cho các ổ đĩa (drive).FileGiúp ích trong việc thao tác các file.FileInfoDùng để thực hiện các hoạt động trên file.FileStreamDùng để đọc và ghi bất kỳ vị trí nào trong một file.MemoryStreamDùng để truy cập ngẫu nhiên tới stream được lưu trữ trong bộ nhớ.PathThực hiện các hoạt động trên thông tin path.StreamReaderDùng để đọc các ký tự từ một byte stream.StreamWriterDùng để ghi các ký tự tới một stream.StringReaderDùng để đọc từ một bộ đệm chuỗi (string buffer).StringWriterDùng để ghi vào một string buffer.

Lớp FileStream trong C#

Lớp FileStream trong namespace System.IO trong C# giúp đọc, ghi và đóng các File. Lớp này dẫn xuất từ lớp abstract là Stream.

Bạn cần tạo một đối tượng FileStream để tạo một file mới hoặc mở một file đang tồn tại. Cú pháp để tạo một đối tượng FileStream trong C# như sau:

FileStream <tên_đối_tượng> = new FileStream( <tên_file>, ,
, );

Ví dụ: Tạo một đối tượng FileStream là F để đọc một file với tên vidu.txt, như sau:

FileStream F = new FileStream("vidu.txt", FileMode.Open, FileAccess.Read,
FileShare.Read);
Tham sốMô tảFileMode

FileMode enumerator định nghĩa các phương thức khác nhau để mở file. Các thành viên của FileMode enumerator là:

  • Append: Mở một file đã có và đặt con trỏ tại phần cuối của file, hoặc tạo File, nếu file đó chưa tồn tại.

  • Create: Tạo một file mới.

  • CreateNew: Xác định với hệ điều hành rằng nó sẽ tạo một file mới.

  • Open: Mở một file đang tồn tại.

  • OpenOrCreate: Xác định với hệ điều hành rằng nó sẽ mở một file nếu nó tồn tại, nếu không thì nó sẽ tạo một file mới.

  • Truncate: Mở một file đang tồn tại và truncate (cắt) kích cỡ của nó về 0 byte.

FileAccess

FileAccess enumerators có các thành viên là: Read, ReadWrite và Write.

FileShare

FileShare enumerators có các thành viên sau:

  • Inheritable: Cho phép một file truyền tính kế thừa tới các tiến trình con.

  • None: Từ chối việc chia sẻ file hiện tại.

  • Read: Cho phép mở file để đọc.

  • ReadWrite: Cho phép mở file để đọc và ghi.

  • Write: Cho phép mở file để ghi.

Ví dụ:

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

using System;
using System.IO;

namespace VdIO {
   class Program {
      static void Main(string[] args) {
         FileStream F = new FileStream("test.dat", FileMode.OpenOrCreate, 
            FileAccess.ReadWrite);
         
         for (int i = 1; i <= 20; i++) {
            F.WriteByte((byte)i);
         }
         F.Position = 0;
         for (int i = 0; i <= 20; i++) {
            Console.Write(F.ReadByte() + " ");
         }
         F.Close();
         Console.ReadKey();
      }
   }
}

Sử dụng lệnh Console.ReadKey(); để nhìn kết quả một cách rõ ràng hơn. Biên dịch và chạy chương trình C# trên sẽ cho kết quả sau:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -1 

Hoạt động file nâng cao trong C#

Ví dụ trước minh họa các hoạt động đơn giản trên file trong C#. Tuy nhiên, để lợi dụng tối đa sức mạnh của các lớp System.IO trong C#, bạn cần biết các thuộc tính và phương thức được sử dụng phổ biến về các lớp này.

  • Đọc và ghi file văn bản: Lớp StreamReader và StreamWriter giúp thực hiện việc đọc và ghi các file văn bản.
  • Đọc và ghi file nhị phân: Lớp BinaryReader và BinaryWriter giúp thực hiện việc đọc và ghi các file nhị phân.
  • Thao tác Windows file system: Nó cung cấp cho lập trình viên C# khả năng duyệt và xác định vị trí các file và thư mục trong Windows.

Theo tutorialspoint

Bài trước: Xử lý ngoại lệ (Try/Catch/Finally) trong C#

Bài tiếp: Attribute trong C#

Thứ Bảy, 28/07/2018 17:14

3,73 👨 3.023

0 Bình luận

Sắp xếp theo

Hướng dẫn file i/o trong c++

Xóa Đăng nhập để Gửi

Bạn nên đọc

  • Hướng dẫn file i/o trong c++
    [Góc hoài niệm] - HTC HD2, chiếc smartphone "đa nhân cách"
  • Hướng dẫn file i/o trong c++
    Cách check mail iCloud trên trình duyệt web
  • Hướng dẫn file i/o trong c++
    Trojan 2.0 - Hệ luỵ của công nghệ Web 2.0
  • Hướng dẫn file i/o trong c++
    Cách đa nhiệm tốt hơn với File Explorer của Windows 11 22H2
  • Hướng dẫn file i/o trong c++
    Các thiết bị Android sẽ được “đóng dấu” nhãn hiệu

Lập trình C#

  • Hướng dẫn file i/o trong c++
    Cách sử dụng hàm toán trong C#
Xem thêm

  • Hướng dẫn file i/o trong c++
    Công nghệ
    • Hướng dẫn file i/o trong c++
      Ứng dụng
    • Hướng dẫn file i/o trong c++
      Hệ thống
    • Hướng dẫn file i/o trong c++
      Game - Trò chơi
    • Hướng dẫn file i/o trong c++
      iPhone
    • Hướng dẫn file i/o trong c++
      Android
    • Hướng dẫn file i/o trong c++
      Linux
    • Hướng dẫn file i/o trong c++
      Nền tảng Web
    • Hướng dẫn file i/o trong c++
      Đồng hồ thông minh
    • Hướng dẫn file i/o trong c++
      Chụp ảnh - Quay phim
    • Hướng dẫn file i/o trong c++
      macOS
    • Hướng dẫn file i/o trong c++
      Phần cứng
    • Hướng dẫn file i/o trong c++
      Thủ thuật SEO
    • Hướng dẫn file i/o trong c++
      Kiến thức cơ bản
    • Hướng dẫn file i/o trong c++
      Raspberry Pi
    • Hướng dẫn file i/o trong c++
      Dịch vụ ngân hàng
    • Hướng dẫn file i/o trong c++
      Lập trình
    • Hướng dẫn file i/o trong c++
      Dịch vụ công trực tuyến
    • Hướng dẫn file i/o trong c++
      Dịch vụ nhà mạng
    • Hướng dẫn file i/o trong c++
      Nhà thông minh
  • Hướng dẫn file i/o trong c++
    Download
    • Hướng dẫn file i/o trong c++
      Ứng dụng văn phòng
    • Hướng dẫn file i/o trong c++
      Tải game
    • Hướng dẫn file i/o trong c++
      Tiện ích hệ thống
    • Hướng dẫn file i/o trong c++
      Ảnh, đồ họa
    • Hướng dẫn file i/o trong c++
      Internet
    • Hướng dẫn file i/o trong c++
      Bảo mật, Antivirus
    • Hướng dẫn file i/o trong c++
      Họp, học trực tuyến
    • Hướng dẫn file i/o trong c++
      Video, phim, nhạc
    • Hướng dẫn file i/o trong c++
      Mail
    • Hướng dẫn file i/o trong c++
      Lưu trữ đám mây
    • Hướng dẫn file i/o trong c++
      Giao tiếp, liên lạc, hẹn hò
    • Hướng dẫn file i/o trong c++
      Hỗ trợ học tập
    • Hướng dẫn file i/o trong c++
      Máy ảo
  • Hướng dẫn file i/o trong c++
    Tiện ích
  • Hướng dẫn file i/o trong c++
    Khoa học
    • Hướng dẫn file i/o trong c++
      Khoa học vui
    • Hướng dẫn file i/o trong c++
      Khám phá khoa học
    • Hướng dẫn file i/o trong c++
      Bí ẩn - Chuyện lạ
    • Hướng dẫn file i/o trong c++
      Chăm sóc Sức khỏe
    • Hướng dẫn file i/o trong c++
      Khoa học Vũ trụ
    • Hướng dẫn file i/o trong c++
      Khám phá thiên nhiên
  • Hướng dẫn file i/o trong c++
    Điện máy
    • Hướng dẫn file i/o trong c++
      Tủ lạnh
    • Hướng dẫn file i/o trong c++
      Tivi
    • Hướng dẫn file i/o trong c++
      Điều hòa
    • Hướng dẫn file i/o trong c++
      Máy giặt
  • Hướng dẫn file i/o trong c++
    Cuộc sống
    • Hướng dẫn file i/o trong c++
      Kỹ năng
    • Hướng dẫn file i/o trong c++
      Món ngon mỗi ngày
    • Hướng dẫn file i/o trong c++
      Làm đẹp
    • Hướng dẫn file i/o trong c++
      Nuôi dạy con
    • Hướng dẫn file i/o trong c++
      Chăm sóc Nhà cửa
    • Hướng dẫn file i/o trong c++
      Kinh nghiệm Du lịch
    • Hướng dẫn file i/o trong c++
      Halloween
    • Hướng dẫn file i/o trong c++
      Mẹo vặt
    • Hướng dẫn file i/o trong c++
      Giáng sinh - Noel
    • Hướng dẫn file i/o trong c++
      Tết 2023
    • Hướng dẫn file i/o trong c++
      Quà tặng
    • Hướng dẫn file i/o trong c++
      Giải trí
    • Hướng dẫn file i/o trong c++
      Là gì?
    • Hướng dẫn file i/o trong c++
      Nhà đẹp
    • Hướng dẫn file i/o trong c++
      TOP
    • Hướng dẫn file i/o trong c++
      Phong thủy
  • Hướng dẫn file i/o trong c++
    Video
    • Hướng dẫn file i/o trong c++
      Công nghệ
    • Hướng dẫn file i/o trong c++
      Cisco Lab
    • Hướng dẫn file i/o trong c++
      Microsoft Lab
    • Hướng dẫn file i/o trong c++
      Video Khoa học
  • Hướng dẫn file i/o trong c++
    Ô tô, Xe máy
    • Hướng dẫn file i/o trong c++
      Giấy phép lái xe
  • Hướng dẫn file i/o trong c++
    Làng Công nghệ
    • Hướng dẫn file i/o trong c++
      Tấn công mạng
    • Hướng dẫn file i/o trong c++
      Chuyện công nghệ
    • Hướng dẫn file i/o trong c++
      Công nghệ mới
    • Hướng dẫn file i/o trong c++
      Trí tuệ nhân tạo (AI)
    • Hướng dẫn file i/o trong c++
      Anh tài công nghệ
    • Hướng dẫn file i/o trong c++
      Bình luận công nghệ
    • Hướng dẫn file i/o trong c++
      Tổng hợp
  • Hướng dẫn file i/o trong c++
    Học CNTT
    • Hướng dẫn file i/o trong c++
      Quiz công nghệ
    • Hướng dẫn file i/o trong c++
      Microsoft Word 2016
    • Hướng dẫn file i/o trong c++
      Microsoft Word 2013
    • Hướng dẫn file i/o trong c++
      Microsoft Word 2007
    • Hướng dẫn file i/o trong c++
      Microsoft Excel 2019
    • Hướng dẫn file i/o trong c++
      Microsoft Excel 2016
    • Hướng dẫn file i/o trong c++
      Hàm Excel
    • Hướng dẫn file i/o trong c++
      Microsoft PowerPoint 2019
    • Hướng dẫn file i/o trong c++
      Microsoft PowerPoint 2016
    • Hướng dẫn file i/o trong c++
      Google Sheets - Trang tính
    • Hướng dẫn file i/o trong c++
      Code mẫu
    • Hướng dẫn file i/o trong c++
      Photoshop CS6
    • Hướng dẫn file i/o trong c++
      Photoshop CS5
    • Hướng dẫn file i/o trong c++
      HTML
    • Hướng dẫn file i/o trong c++
      CSS và CSS3
    • Hướng dẫn file i/o trong c++
      Python
    • Hướng dẫn file i/o trong c++
      Học SQL
    • Hướng dẫn file i/o trong c++
      Lập trình C
    • Hướng dẫn file i/o trong c++
      Lập trình C++
    • Hướng dẫn file i/o trong c++
      Lập trình C#
    • Hướng dẫn file i/o trong c++
      Học HTTP
    • Hướng dẫn file i/o trong c++
      Bootstrap
    • Hướng dẫn file i/o trong c++
      SQL Server
    • Hướng dẫn file i/o trong c++
      JavaScript
    • Hướng dẫn file i/o trong c++
      Học PHP
    • Hướng dẫn file i/o trong c++
      jQuery
    • Hướng dẫn file i/o trong c++
      Học MongoDB
    • Hướng dẫn file i/o trong c++
      Unix/Linux
    • Hướng dẫn file i/o trong c++
      Học Git
    • Hướng dẫn file i/o trong c++
      NodeJS

Giới thiệu | Điều khoản | Bảo mật | Hướng dẫn | Ứng dụng | Liên hệ | Quảng cáo | Facebook | Youtube | DMCA

Giấy phép số 362/GP-BTTTT. Bộ Thông tin và Truyền thông cấp ngày 30/06/2016. Cơ quan chủ quản: CÔNG TY CỔ PHẦN MẠNG TRỰC TUYẾN META. Địa chỉ: 56 Duy Tân, Dịch Vọng Hậu, Cầu Giấy, Hà Nội. Điện thoại: 024 2242 6188. Email: [email protected]. Chịu trách nhiệm nội dung: Lê Ngọc Lam.

Bản quyền © 2003-2023 QuanTriMang.com. Giữ toàn quyền. Không được sao chép hoặc sử dụng hoặc phát hành lại bất kỳ nội dung nào thuộc QuanTriMang.com khi chưa được phép.