C# ialah bahasa pengaturcaraan berorientasikan objek yang berkuasa yang digunakan untuk membangunkan pelbagai aplikasi. Dalam artikel ini, kita akan membincangkan cara menulis program C# untuk membaca dan menulis tatasusunan bait pada fail menggunakan kelas FileStream.
Langkah pertama program ini ialah mencipta tatasusunan bait yang ingin kita tulis pada fail. Ini adalah contoh -
byte[] byteArray = { 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64 };
Langkah seterusnya ialah menulis tatasusunan bait pada fail menggunakan kelas FileStream. Kita perlu mencipta contoh baharu kelas FileStream dan lulus laluan fail, FileMode, FileAccess dan FileShare sebagai parameter kepada pembinanya. Berikut adalah contoh -
string filePath = "C:\MyFile.txt"; using (FileStream fileStream = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None)) { fileStream.Write(byteArray, 0, byteArray.Length); }
Untuk membaca tatasusunan bait daripada fail, kita perlu mencipta contoh baharu kelas FileStream dan lulus laluan fail, FileMode, FileAccess dan FileShare sebagai parameter kepada pembinanya. Kami kemudian mencipta tatasusunan bait dan membaca kandungan fail ke dalam tatasusunan bait menggunakan kaedah Read() kelas FileStream. Ini adalah contoh -
byte[] readByteArray = new byte[byteArray.Length]; using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read)) { fileStream.Read(readByteArray, 0, readByteArray.Length); }
Akhir sekali, kita perlu membandingkan tatasusunan bait asal dan tatasusunan bait yang dibaca daripada fail untuk memastikan ia adalah sama. Kita boleh membandingkan dua tatasusunan bait menggunakan kaedah SequenceEqual() kelas Enumerable. Ini adalah contoh -
bool areEqual = byteArray.SequenceEqual(readByteArray);
Ini ialah program C# yang lengkap -
using System; using System.IO; using System.Linq; namespace ByteArrayToFile { class Program { static void Main(string[] args) { byte[] byteArray = { 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64 }; string filePath = "C:\MyFile.txt"; // Write byte array to file using (FileStream fileStream = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None)) { fileStream.Write(byteArray, 0, byteArray.Length); } // Read byte array from file byte[] readByteArray = new byte[byteArray.Length]; using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read)) { fileStream.Read(readByteArray, 0, readByteArray.Length); } // Compare the byte arrays bool areEqual = byteArray.SequenceEqual(readByteArray); Console.WriteLine("Are the byte arrays equal? " + areEqual); } } }
Are the byte arrays equal? True
Dalam artikel ini, kami mempelajari cara menulis program C# untuk membaca dan menulis tatasusunan bait pada fail menggunakan kelas FileStream. Program ini boleh digunakan dalam pelbagai senario, seperti membaca dan menulis imej atau fail audio. Dengan memahami konsep yang diliputi dalam artikel ini, anda boleh membangunkan aplikasi yang lebih maju yang memerlukan input dan output fail. Saya harap artikel ini telah membantu dalam perjalanan pengaturcaraan anda. Selamat mengekod!
Atas ialah kandungan terperinci Program C# untuk membaca tatasusunan bait dan menulisnya pada fail menggunakan kelas FileStream. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!