Pengekodan Unikod Mentah: Panduan Menjadikannya Boleh Dibaca
Banyak respons API web mengandungi data JSON yang menggunakan pengekodan Unikod mentah. Walaupun format ini boleh mencabar untuk ditafsir, ia boleh dibaca dengan pendekatan yang betul.
Cabaran:
Apabila API web mengembalikan respons sedemikian, memaparkan badan sebagai teks menggunakan kaedah seperti fmt.Println() menghasilkan kandungan ASCII yang tidak boleh dibaca. Percubaan untuk menghuraikan kandungan menggunakan bufio.ScanRunes juga gagal.
Penyelesaian: Penyahkod Unikod
Untuk menyahkod pengekodan Unikod mentah dan menjadikan kandungan boleh dibaca, kami mengesyorkan menggunakan penyahkod JSON. Kod contoh yang diberikan menunjukkan cara ini boleh dicapai:
func main() { var i interface{} err := json.Unmarshal([]byte(`<RESPONSE_BODY>`), &i) fmt.Println(err, i) }
Dengan menyahmarshaling badan tindak balas ke dalam antara muka{}, penyahkod JSON secara automatik menukar Unicode melarikan diri ke dalam aksara masing-masing.
Pendekatan Alternatif: Penyahkodan Manual
Jika anda lebih suka pendekatan yang lebih langsung, anda boleh menyahkod serpihan tertentu rentetan yang dikodkan Unikod secara manual menggunakan fungsi strconv.Unquote():
fmt.Println(strconv.Unquote(`"\u7d20\u672a\u8c0b"`))
Ingat untuk melampirkan rentetan yang dikodkan Unikod dalam petikan berganda apabila menggunakan strconv.Unquote(), dan jadi pastikan anda menggunakan literal rentetan mentah untuk menghalang pengkompil daripada mentafsirkan melarikan diri.
Kesimpulan:
Dengan menggunakan teknik yang digariskan di atas, anda boleh menyahkod kandungan mentah berkod Unikod dan menjadikannya boleh dibaca dengan berkesan. Ini membuka kemungkinan pemprosesan dan analisis selanjutnya bagi data JSON yang diambil.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membuat Data JSON Berkod Unikod Mentah Boleh Dibaca?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!