首頁 > 後端開發 > Golang > 如何在 Go 中解組 ISO-8859-1 編碼的 XML?

如何在 Go 中解組 ISO-8859-1 編碼的 XML?

Patricia Arquette
發布: 2024-12-12 19:18:11
原創
839 人瀏覽過

How Can I Unmarshal ISO-8859-1 Encoded XML in Go?

使用Go 解組以ISO-8859-1 編碼的XML

如果您的XML 輸入,Go 的xml 包中流行的Unmarshal 函數可能會具有挑戰性不是以UTF-8 編碼的。為了處理這類輸入,Go 需要一個 CharsetReader。

哪裡可以找到 CharsetReader?

在 Go 的最新版本(2015 年起)中,golang.org/x /net/html/charset 套件提供了必要的功能。此套件中的 NewReaderLabel 函數可以執行必要的轉換。

程式碼範例

以下程式碼片段示範如何使用NewReaderLabel 正確解組以ISO 編碼的XML 輸入-8859-1:

import (
    "encoding/xml"
    "golang.org/x/net/html/charset"
    "bytes"
)

var theXml = [...]byte{byte(0x3C), byte(0x3F), byte(0x78), byte(0x6D), /* ... */}

reader := bytes.NewReader(theXml)
decoder := xml.NewDecoder(reader)
decoder.CharsetReader = charset.NewReaderLabel
err := decoder.Decode(&parsed)
登入後複製

透過合併此代碼,Go 可以成功解組以ISO-8859-1 編碼的XML 輸入。

以上是如何在 Go 中解組 ISO-8859-1 編碼的 XML?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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