在Go 中將Unicode 代碼點轉換為字元
在處理文字檔案時,您可能會遇到字元被編碼為Unicode代碼點的情況。要以文字顯示這些字符,您需要將代碼點轉換為字符。
在此特定範例中,您有一個包含Unicode 程式碼點的文字檔案:
\u0053 \u0075 \u006E
您想要將這些程式碼點轉換為對應的字元:
S u n
要實現此轉換,您可以利用strconv.Unquote() 和strconv.UnquoteChar() 函數。
使用 strconv.Unquote()
如果字串用引號引起來,則可以使用 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()
如果您的字串代表單一符文, strconv.UnquoteChar() 較為合適。它不需要任何引號:
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) }
轉換程式碼點後,您將獲得以下輸出:
S u n
以上是如何在 Go 中將 Unicode 代碼點轉換為字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!