Menentukan Pengekodan Charset bagi Strim dalam Java
Dalam urutan sebelumnya, pengguna menghadapi kesukaran untuk membaca ISO-8859-1 dengan tepat fail yang dikodkan menggunakan Java. Sekarang, persoalan timbul: bagaimanakah pengekodan charset yang betul bagi aliran input atau fail dikenal pasti secara pemrograman?
Pendekatan Konvensional dan Hadnya
Pendekatan tipikal melibatkan penggunaan kaedah getEncoding() bagi objek InputStreamReader. Walau bagaimanapun, seperti yang ditunjukkan oleh kod yang disediakan, kaedah ini mungkin tidak menentukan pengekodan strim bait arbitrari dengan tepat. Ia hanya mengembalikan pengekodan yang telah disediakan sebelum ini untuk strim dan tidak melakukan sebarang tekaan pintar.
Pertimbangan Pengekodan
Adalah penting untuk mengakui bahawa menentukan pengekodan aliran bait pada asasnya adalah mustahil. Pengekodan mewakili pemetaan antara nilai bait dan aksara yang sepadan. Akibatnya, sebarang pengekodan berkemungkinan betul.
Dokumen XML dan HTML selalunya secara eksplisit menunjukkan pengekodannya, tetapi strim bait umum tidak memberikan maklumat sedemikian.
Penyelesaian Kemungkinan
Jika menentukan pengekodan yang tepat adalah penting, pertimbangkan perkara berikut penyelesaian:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan Secara Pengaturcaraan Pengekodan Charset bagi Java InputStream?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!