Memaparkan Aksara UTF-8 dengan betul dalam Konsol Windows
Banyak percubaan untuk memaparkan aksara UTF-8 dalam konsol Windows menggunakan kaedah tradisional gagal memaparkan aksara lanjutan dengan betul.
Percubaan Gagal:
Satu pendekatan biasa menggunakan MultiByteToWideChar() dan wprintf() terbukti tidak berkesan, hanya meninggalkan aksara ASCII yang kelihatan. Selain itu, menetapkan halaman kod keluaran konsol kepada CP_UTF8 menggunakan SetConsoleOutputCP() dan menulis terus dengan aksara ASCII masih mengakibatkan aksara rosak.
Kaedah Berjaya:
Akhirnya, tiga kaedah terbukti berjaya:
Sebab Kegagalan dengan CP_UTF8:
Isu asas dengan CP_UTF8 timbul daripada konsol yang tidak bertindak sebagai fail biasa yang menerima aliran bait. Sebaliknya, API konsol mengendalikan data dalam unit diskret, menyebabkan aksara berbilangbait ditafsirkan secara salah apabila dihantar dalam panggilan berasingan.
Atas ialah kandungan terperinci Berikut ialah beberapa tajuk berasaskan soalan yang sesuai dengan artikel anda: **Terus dan Ringkas:** * **Bagaimana untuk Memaparkan Aksara UTF-8 dengan Betul dalam Windows Console?** * **Mengapa Kaedah Tradisional Gagal Disp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!