Tidak perlu BinaryReader dalam C# untuk menukar tatasusunan bait kepada rentetan
Apabila memanipulasi data dalam tatasusunan bait, selalunya perlu menukarnya kepada rentetan untuk pemprosesan atau paparan selanjutnya. Artikel ini meneroka cara melakukan penukaran ini menggunakan C# tanpa bergantung pada kelas BinaryReader.
Soalan:
Anda telah mencipta tatasusunan bait yang mengandungi satu atau lebih rentetan dan perlu mendapatkan semula nilai rentetan daripada tatasusunan bait. Walau bagaimanapun, disebabkan oleh sekatan keserasian, kelas BinaryReader tidak boleh digunakan.
Penyelesaian:
Untuk menukar tatasusunan bait kepada rentetan, anda boleh menggunakan kaedah System.Text.Encoding.Default.GetString(). Kaedah ini mengambil tatasusunan bait sebagai input dan secara automatik menentukan pengekodan yang sesuai berdasarkan tetapan lalai sistem.
<code class="language-csharp">byte[] result = reader.ReadBytes((int)binWriter.BaseStream.Length); var str = System.Text.Encoding.Default.GetString(result);</code>
Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa pengekodan lalai mungkin tidak selalunya sesuai dengan keperluan khusus anda. Dalam kes ini, anda boleh menentukan pengekodan yang diingini secara eksplisit menggunakan salah satu kaedah berikut:
<code class="language-csharp">// 使用 ASCII 编码转换 var str = System.Text.Encoding.ASCII.GetString(result); // 使用 UTF-8 编码转换 var str = System.Text.Encoding.UTF8.GetString(result); //等等</code>
Atas ialah kandungan terperinci Bagaimana untuk Menukar Tatasusunan Byte kepada Rentetan dalam C# Tanpa Menggunakan BinaryReader?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!