首頁 > 後端開發 > Golang > 如何在 Go 中將 Unicode 代碼點轉換為文字字元?

如何在 Go 中將 Unicode 代碼點轉換為文字字元?

Patricia Arquette
發布: 2024-12-19 00:46:09
原創
505 人瀏覽過

How to Convert Unicode Code Points to Literal Characters in Go?

在Go 中將Unicode 代碼點轉換為文字字元

假設您遇到一個帶有如下Unicode 代碼點的文字檔:

\u0053
\u0075
\u006E
登入後複製

您的目標是將這些程式碼點轉換為其對應的文字字元:

S
u
n
登入後複製

您嘗試使用ioutil.ReadFile("data.txt"),但它輸出的是代碼點而不是字元。

解決方案:利用strconv.Unquote() 和strconv.UnquoteChar()

要解決您的問題,您可以使用strconv.Unquote() 或strconv. UnquoteChar()。但是,請注意strconv.Unquote() 要求輸入字串用引號引起來:

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)
    }
}
登入後複製

或者,如果要取消引用單個符文或不帶引號的字串,可以使用strconv.UnquoteChar( ) :

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

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

這些方法將使您能夠將unicode 代碼點轉換為Go中的文字字符,無論它們是用引號括起來還是不是。

以上是如何在 Go 中將 Unicode 代碼點轉換為文字字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板