首頁 > 後端開發 > Golang > 如何刪除 Go 中無效的 UTF-8 字元?

如何刪除 Go 中無效的 UTF-8 字元?

Patricia Arquette
發布: 2024-12-14 16:10:17
原創
194 人瀏覽過

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

在Go 中刪除無效的UTF-8 字符

處理JSON 資料時,可能會遇到無效的UTF-8 字符,從而導致在編組期間出現錯誤。出現此問題的原因是存在不符合 UTF-8 編碼的位元組。

處理無效的UTF-8 字元

在Go 中,您可以透過刪除或解決此問題使用各種方法替換無效字元:

Go 1.13

strings.ToValidUTF8("a\xc5z", "")
登入後複製

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

此函數透過將所有無效的 UTF-8 字元對應到負值來刪除它們,從而產生預期的輸出:

az
posico
登入後複製

以上是如何刪除 Go 中無效的 UTF-8 字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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