如果您的XML输入未使用UTF-8编码Unmarshal
,则xml包的功能似乎需要一个CharsetReader
。
你在哪里找到这样的东西?
更新了2015年及以后的答案:
import (
"encoding/xml"
"golang.org/x/net/html/charset"
)
reader := bytes.NewReader(theXml)
decoder := xml.NewDecoder(reader)
decoder.CharsetReader = charset.NewReaderLabel
err = decoder.Decode(&parsed)
主要内容:ISO-8859-1,HTML 预留字符,ISO 8859-1 字符实体现代的浏览器支持的字符集: ASCII 字符集 标准 ISO 字符集 数学符号、希腊字母、其他符号 ISO-8859-1 ISO-8859-1 是大多数浏览器默认的字符集。 ISO-8859-1 的较低部分(从 1 到 127 之间的代码)是最初的 ASCII 字符集(0-9 的数字,大写和小写英文字母表,以及一些特殊字符)。 ISO-8859-1 的较高部分(从 160 到 255 之间的代码)
Unicode是ISO-8859-1的超集,因此前256个Unicode字符对应于ISO-8859-1。
问题内容: 我是Golang的新手。我正在开发一种通过TCP从远程地址读取字节的服务。问题是我无法更改读取的字节的编码。我想将读取的字节转换为ISO-8859-9字符串。这是阅读代码的一部分。 代码工作正常。但是编码与我想要的不同。这是接受服务的问题。有什么建议吗? 问题答案: charmap.ISO8859_9.NewEncoder()。Bytes()函数要使用UTF-8格式进行编码。尝试对字节
问题内容: 我正在阅读XML文档(UTF-8),并最终使用ISO-8859-1在网页上显示内容。正如预期的那样,有几个字符显示不正确,比如,和(他们显示为?)。 是否可以将这些字符从UTF-8转换为ISO-8859-1? 这是我编写的尝试此功能的代码段: 我不太确定发生了什么问题,但是我认为是readLine()引起了麻烦(因为字符串将是Java / UTF-16编码的?)。我尝试的另一种变化
我在Java应用程序中遇到字符串编码的问题。我的Informix数据库有ISO-8859-2编码。我在连接字符串中设置了。我的连接URL如下所示: 从数据库中选择数据后,Java字符串不能识别波兰特殊字符。方法返回代码。