|
|
Diposting pada 13/04/2018 16.11.20
|
|
|

Hari ini, ketika saya membuat dialog Open File OpenFileDialog, saya perlu membaca file yang terbuka dan menampilkannya di RichTextBox dalam formulir. Namun, saat menampilkan file, ditemukan bahwa string Cina yang ditampilkan kacau. Bagian-bagian penting dari kode adalah sebagai berikut:
Awalnya, saya juga berpikir ada masalah dengan pengkodean karakter, jadi ketika saya menginisialisasi StreamReader, saya menambahkan parameter pengkodean karakter ke dalamnya, dan menambahkannya beberapa kali, Encoding.Unicode, Encoding.UTF32, Encoding.UTF7, Encoding.UTF8, Encoding.ASCII, saya mencoba semua skema pengkodean yang dapat ditambahkan, tetapi hasilnya tidak bagus.
Awalnya, sistem operasi dari Windows 2000 dan kemudian menggunakan Unicode untuk pemrosesan file, jadi . Pengodean file default untuk .Net juga Unicode. Kecuali ditentukan lain, pengkodean default StreamReader adalah Unicode, bukan halaman kode ANSI sistem saat ini. Namun, sebagian besar dokumen masih disimpan dalam pengkodean ANSI, dan teks bahasa Mandarin menggunakan gb2312, yang menyebabkan karakter kacau, yang berarti bahwa format pengkodean harus ditentukan saat membaca teks.
Solusinya adalah: System.Text.Encoding.Default memberi tahu StreamReader pengkodean sistem operasi saat ini.
|
Mantan:.net/c# Xml, Json, Hessian, Perbandingan serialisasi Buffer ProtokolDepan:.net/c# Gunakan Costura.Fody untuk mengemas DLL ke dalam EXE
|