Tukar rentetan kepada tatasusunan bait dalam C#
Anda mungkin menghadapi masalah sintaks apabila cuba menukar rentetan kepada tatasusunan bait dalam C#. Mari kita terokai kes tertentu dan penyelesaiannya.
Soalan:
Cuba untuk menukar nilai harta objek VB kepada tatasusunan bait C# mengakibatkan ralat:
<code>Argument 1: cannot convert from 'object' to 'byte[]'</code>
Penyelesaian:
Untuk berjaya menukar nilai atribut, anda perlu mengetahui pengekodan yang digunakan dalam penukaran asal. Contohnya:
<code class="language-csharp">byte[] bytes = System.Text.Encoding.ASCII.GetBytes(originalString); string encodedString = System.Text.Encoding.ASCII.GetString(bytes);</code>
Jika anda tidak mengetahui pengekodan yang digunakan, anda boleh menyemak kod yang diwarisi untuk mendapatkan petunjuk. Kelas System.Text.Encoding
menyediakan pelbagai pengekodan termasuk ASCII, UTF8, Unicode dan UTF32. Lihat dokumentasi untuk senarai lengkap.
Sila ambil perhatian bahawa kod yang anda berikan:
<code class="language-csharp">string User = Encoding.UTF8.GetString("user", 0);</code>
adalah salah kerana ia cuba menukar rentetan kepada tatasusunan bait tanpa sebarang data sebenar untuk ditukar. Dalam pernyataan VB yang disediakan, searchResult.Properties["user"][0]
ialah objek yang mengandungi tatasusunan bait, yang perlu diakses dan ditukar dengan sewajarnya.
Atas ialah kandungan terperinci Bagaimanakah Saya Menukarkan Harta Rentetan Objek VB.NET kepada Array Bait C# dengan betul?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!