Đọc Và Ghi Text File Trong C# | 85 Bài Học Lập Trình C# Hay Nhất
Có thể bạn quan tâm
- Cơ bản về C#
- C# - Giới thiệu
- C# là gì
- C# - Cài đặt môi trường
- C# - Cấu trúc chương trình
- C# - Cú pháp cơ bản
- C# - Kiểu dữ liệu
- C# - Chuyển đổi kiểu
- C# - Biến
- C# - Hằng (Constant/Literal)
- C# - Toán tử
- C# - Lệnh If, Else, Switch
- C# - Vòng lặp
- C# - Tính đóng gói
- C# - Phương thức
- C# - Nullable
- C# - Mảng (Array)
- C# - Chuỗi (String)
- C# - Structure
- C# - Enum
- C# - Lớp (Class)
- C# - Tính kế thừa
- C# - Tính đa hình
- C# - Nạp chồng toán tử
- C# - Interface
- C# - Namespace
- C# - Chỉ thị tiền xử lý
- C# - Regular Expression
- C# - Exception Handling
- C# - File I/O
- Hoạt động C# nâng cao
- C# - Attribute
- C# - Reflection
- C# - Property
- C# - Indexer
- C# - Delegate
- C# - Sự kiện (Event)
- C# - Collection
- C# - Generic
- C# - Phương thức nặc danh
- C# - Unsafe Code
- C# - Multithreading
- Tài liệu tham khảo C#
- C# - Tài liệu tham khảo
- 200 Bài tập C# có giải
- Học C/C++ cơ bản và nâng cao
- Bài hướng dẫn C
- Bài hướng dẫn C++
Các lớp StreamReader và StreamWriter trong C# được sử dụng để đọc và ghi dữ liệu tới text file. Những lớp này kế thừa từ lớp abstract cơ sở là Stream, mà hỗ trợ việc đọc và ghi các byte vào trong File Stream.
Lớp StreamReader trong C#
Lớp StreamReader kế thừa từ lớp abstract cơ sở là TextReader mà biểu diễn một reader để đọc một dãy ký tự. Bảng sau miêu tả một số phương thức được sử dụng phổ biến của lớp StreamReader trong C#:
STT | Phương thức |
---|---|
1 | public override void Close() Nó đóng đối tượng StreamReader và Underlying Stream, và giải phóng bất kỳ nguồn hệ thống nào được liên kết với Reader đó |
2 | public override int Peek() Trả về ký tự có sẵn tiếp theo nhưng không hủy nó |
3 | public override int Read() Đọc ký tự tiếp theo từ Input Stream và tăng vị trí ký tự thêm 1 |
Ví dụ
Dưới đây là ví dụ minh họa cách đọc một text file có tên textfile.txt có nội dung sau:
using System; using System.IO; namespace VietJackCsharp { class TestCsharp { static void Main(string[] args) { Console.WriteLine("Vi du minh hoa doc File trong C#"); Console.WriteLine("---------------------------------"); try { // tao instance cua StreamReader de doc mot file. // lenh using cung duoc su dung de dong StreamReader. using (StreamReader sr = new StreamReader("textfile.txt")) { string line; // doc va hien thi cac dong trong file cho toi // khi tien toi cuoi file. while ((line = sr.ReadLine()) != null) { Console.WriteLine(line); } } Console.ReadKey(); } catch (Exception e) { // thong bao loi. Console.WriteLine("Khong the doc du lieu tu file da cho: "); Console.WriteLine(e.Message); } } } }Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta 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:
Quảng cáoLớp StreamWriter trong C#
Lớp StreamWriter trong C# kế thừa từ lớp abstract là TextWriter mà biểu diễn một Writer để ghi một dãy ký tự.
Bảng dưới miêu tả các phương thức được sử dụng phổ biến của lớp StreamWriter trong C#:
STT | Phương thức |
---|---|
1 | public override void Close() Đóng đối tượng StreamWriter hiện tại và Underlying Stream |
2 | public override void Flush() Xóa tất cả buffer cho Writer hiện tại và làm cho bất kỳ dữ liệu được đệm nào để được ghi tới Underlying Stream |
3 | public virtual void Write(bool value) Ghi biểu diễn text của một giá trị Boolean tới Text string hoặc stream (được kế thừa từ TextWriter) |
4 | public override void Write(char value) Ghi một ký tự tới Stream |
5 | public virtual void Write(decimal value) Ghi biểu diễn text của một giá trị thập phân tới Text string hoặc stream |
6 | public virtual void Write(double value) Ghi biểu diễn text của một giá trị số thực 8 byte tới Text string hoặc stream |
7 | public virtual void Write(int value) Ghi biểu diễn text của một giá trị signed integer 4 byte tới Text string hoặc stream |
8 | public override void Write(string value) Ghi một string tới Stream |
9 | public virtual void WriteLine() Ghi một line terminator tới Text string hoặc stream |
Để có danh sách đầy đủ các phương thức trong lớp StreamWriter, bạn tham khảo Microsoft Documentation về C#.
Ví dụ
Dưới đây là ví dụ minh họa cách ghi dữ liệu text vào trong một file bởi sử dụng lớp StreamWriter trong C#:
Chúng ta tiến hành ghi dữ liệu vào textfile.txt trống rồi sau đó tiến hành đọc và hiển thị dữ liệu trên màn hình.
using System; using System.IO; namespace VietJackCsharp { class TestCsharp { static void Main(string[] args) { Console.WriteLine("Vi du minh hoa doc va ghi File trong C#"); Console.WriteLine("---------------------------------"); string[] names = new string[] { "Tran Van A", "Nguyen Minh B" }; using (StreamWriter sw = new StreamWriter("textfile.txt")) { foreach (string s in names) { sw.WriteLine(s); } } // doc va hien thi du lieu trong textfile.txt string line = ""; using (StreamReader sr = new StreamReader("textfile.txt")) { while ((line = sr.ReadLine()) != null) { Console.WriteLine(line); } } Console.ReadKey(); } } }Biên dịch và chạy chương trình C# trên sẽ cho kết quả sau:
Mở textfile.txt và kiểm tra nội dung:
Đã 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
Bài học C# phổ biến khác tại vietjack.com:
- C# - Mảng (Array)
- C# - Chuỗi (String)
- C# - Structure
- C# - Lớp (Class)
- C# - Tính kế thừa
- C# - Tính đa hình
- C# - Nạp chồng toán tử
160 bài học ngữ pháp tiếng Anh hay nhất
155 bài học Java tiếng Việt hay nhất
100 bài học Android tiếng Việt hay nhất
247 bài học CSS tiếng Việt hay nhất
197 thẻ HTML cơ bản
297 bài học PHP
101 bài học C++ hay nhất
97 bài tập C++ có giải hay nhất
208 bài học Javascript có giải hay nhất
Học cùng VietJack
Từ khóa » đọc File Txt C#
-
Đọc Dữ Liệu Từ File Text Bằng Visual C# - Hỗ Trợ Dự án Ghi Log
-
Đọc Ghi File Trong C# - Lập Trình Không Khó
-
Đọc Ghi File (File I/O) Trong C# | Comdy
-
Đọc Ghi File Cơ Bản Trong C# — STDIO
-
Làm Việc Với File Cơ Bản Lưu Và đọc File Text Trong C# C Sharp
-
How To Read From A Text File - C# Programming Guide - Microsoft Docs
-
Bài Tập đọc Ghi File Trong C#
-
[Học C# Nâng Cao] Xử Lý File Text Trong C# - YouTube
-
Làm Việc Với Thư Mục Và File, đọc Ghi File Với FileStream ... - YouTube
-
Bài 1: Đọc Ghi File .txt - C# Cơ Bản
-
Thao Tác Với File Trong C# | How Kteam