Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Mengalih Keluar Aksara UTF-8 Tidak Sah dalam Go?

Bagaimanakah Saya Boleh Mengalih Keluar Aksara UTF-8 Tidak Sah dalam Go?

Patricia Arquette
Lepaskan: 2024-12-14 16:10:17
asal
194 orang telah melayarinya

How Can I Remove Invalid UTF-8 Characters in Go?

Mengalih keluar Aksara UTF-8 Tidak Sah dalam Go

Apabila bekerja dengan data JSON, ada kemungkinan untuk menemui aksara UTF-8 yang tidak sah, yang membawa kepada ralat semasa Marshaling. Isu ini timbul disebabkan oleh kehadiran bait yang tidak mematuhi pengekodan UTF-8.

Mengendalikan Aksara UTF-8 Tidak Sah

Dalam Go, anda boleh menangani masalah ini dengan mengalih keluar atau menggantikan aksara yang tidak sah menggunakan pelbagai pendekatan:

Go 1.13

strings.ToValidUTF8("a\xc5z", "")
Salin selepas log masuk

Go 1.11

fixUtf := func(r rune) rune {
    if r == utf8.RuneError {
        return -1
    }
    return r
}

fmt.Println(strings.Map(fixUtf, "a\xc5z"))
fmt.Println(strings.Map(fixUtf, "posic�o"))
Salin selepas log masuk

Fungsi ini mengalih keluar sebarang aksara UTF-8 yang tidak sah dengan memetakannya kepada nilai negatif, menghasilkan output yang dijangkakan:

az
posico
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengalih Keluar Aksara UTF-8 Tidak Sah dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan