Input dan output fail C#
fail ialah koleksi data yang disimpan pada cakera dengan nama dan laluan direktori yang ditentukan. Apabila fail dibuka untuk membaca atau menulis, ia menjadi strim.
Pada asasnya, strim ialah jujukan bait yang dilalui melalui laluan komunikasi. Terdapat dua strim utama: strim input dan strim output. Strim input digunakan untuk membaca data daripada fail (operasi baca), dan Strim output digunakan untuk menulis data pada fail (operasi tulis).
C# I/O Classes
System.IO namespace mempunyai pelbagai kelas berbeza untuk melaksanakan pelbagai operasi fail seperti membuat dan memadam fail, membaca atau menulis Import fail, menutup fail, dsb.
Jadual berikut menyenaraikan beberapa kelas bukan abstrak yang biasa digunakan dalam ruang nama System.IO:
I/O 类 | 描述 |
---|---|
BinaryReader | 从二进制流读取原始数据。 |
BinaryWriter | 以二进制格式写入原始数据。 |
BufferedStream | 字节流的临时存储。 |
Directory | 有助于操作目录结构。 |
DirectoryInfo | 用于对目录执行操作。 |
DriveInfo | 提供驱动器的信息。 |
File | 有助于处理文件。 |
FileInfo | 用于对文件执行操作。 |
FileStream | 用于文件中任何位置的读写。 |
MemoryStream | 用于随机访问存储在内存中的数据流。 |
Path | 对路径信息执行操作。 |
StreamReader | 用于从字节流中读取字符。 |
StreamWriter | 用于向一个流中写入字符。 |
StringReader | 用于读取字符串缓冲区。 |
StringWriter | 用于写入字符串缓冲区。 |
Kelas FileStream
Kelas FileStream dalam ruang nama System.IO memudahkan pembacaan, penulisan dan penutupan fail. Kelas ini diperoleh daripada aliran kelas abstrak.
Anda perlu mencipta objek FileStream untuk mencipta fail baharu atau membuka fail sedia ada. Sintaks untuk mencipta objek FileStream adalah seperti berikut:
FileStream <object_name> = new FileStream( <file_name>, <FileMode Enumerator>, <FileAccess Enumerator>, <FileShare Enumerator>);
Contohnya, cipta objek FileStream F untuk membaca fail bernama sample.txt:
FileStream F = new FileStream("sample.txt", FileMode.Open, FileAccess.Read, FileShare.Read);
Parameter | Penerangan |
---|---|
Mod Fail | FileMode Penghitungan mentakrifkan pelbagai kaedah untuk membuka fail. Ahli penghitungan FileMode ialah:
|
FileAccess | FileAccess Ahli-ahli penghitungan ialah: Baca, BacaTulis dan Tulis. |
FileShare | FileShare Ahli-ahli penghitungan ialah:
|
Contoh
Atur cara berikut menunjukkan penggunaan kelas FileStream:
using System; using System.IO; namespace FileIOApplication { 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(); } } }
Apabila kod di atas disusun dan dilaksanakan, ia menghasilkan keputusan berikut:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -1
C# Operasi Fail Lanjutan
Contoh di atas menunjukkan operasi fail mudah dalam C#. Walau bagaimanapun, untuk memanfaatkan sepenuhnya kuasa kelas C# System.IO, anda perlu mengetahui sifat dan kaedah yang biasa digunakan oleh kelas ini.
Dalam bahagian berikut, kita akan membincangkan kelas ini dan operasi yang dilakukannya. Sila klik pada pautan untuk mengetahui lebih lanjut tentang setiap bahagian:
Topik | Penerangan |
---|
主题 | 描述 |
---|---|
文本文件的读写 | 它涉及到文本文件的读写。StreamReader 和 StreamWriter 类有助于完成文本文件的读写。 |
二进制文件的读写 | 它涉及到二进制文件的读写。BinaryReader 和 BinaryWriter 类有助于完成二进制文件的读写。 |
Windows 文件系统的操作 | 它让 C# 程序员能够浏览并定位 Windows 文件和目录。 |