Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menukar Mata Kod Unikod kepada Aksara dalam Go?

Bagaimana untuk Menukar Mata Kod Unikod kepada Aksara dalam Go?

Susan Sarandon
Susan Sarandonasal
2024-12-21 19:01:10210semak imbas

How to Convert Unicode Code Points to Characters in Go?

Menukar Mata Kod Unikod kepada Aksara dalam Go

Apabila bekerja dengan fail teks, anda mungkin menghadapi situasi di mana aksara dikodkan sebagai titik kod Unikod . Untuk memaparkan aksara ini dalam bentuk tersuratnya, anda perlu menukar titik kod kepada aksara.

Dalam contoh khusus ini, anda mempunyai fail teks yang mengandungi titik kod Unikod:

\u0053
\u0075
\u006E

Anda ingin menukar mata kod ini kepada aksara yang sepadan:

S
u
n

Untuk mencapai penukaran ini, anda boleh menggunakan fungsi strconv.Unquote() dan strconv.UnquoteChar().

Menggunakan strconv.Unquote()

Jika rentetan anda disertakan dalam petikan, anda boleh menggunakan strconv. Nyahpetik(). Walau bagaimanapun, ia memerlukan anda menambah petikan pada titik kod sendiri:

lines := []string{
    `\u0053`,
    `\u0075`,
    `\u006E`,
}

for i, v := range lines {
    var err error
    lines[i], err = strconv.Unquote(`"` + v + `"`)
    if err != nil {
        fmt.Println(err)
    }
}

Menggunakan strconv.UnquoteChar()

Jika rentetan anda mewakili satu rune, strconv.UnquoteChar() adalah lebih sesuai. Ia tidak memerlukan sebarang petikan:

runes := []string{
    `\u0053`,
    `\u0075`,
    `\u006E`,
}

for _, v := range runes {
    var err error
    value, _, _, err := strconv.UnquoteChar(v, 0)
    if err != nil {
        fmt.Println(err)
    }
    fmt.Printf("%c\n", value)
}

Selepas menukar mata kod, anda akan mendapat output berikut:

S
u
n

Atas ialah kandungan terperinci Bagaimana untuk Menukar Mata Kod Unikod kepada Aksara dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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