我正在使用消息,消息以byte()格式存储,我尝试将其转换为字符串,但在将其写入文件时仍然会看到unicode字符。我在这做错了什么
xwriter = New XmlTextWriter(filename,Encoding.UTF8)
Dim body As String = System.Text.Encoding.UTF8.GetChars(result.Body)
'body = replaceIllegalXMLChars(body) ///tried converting them explicitly but did not work
xwriter.WriteString(post)
xwriter.Flush()
示例输出:
<avataruri>http://a0.twimg.com/profile_images/1651487744/Vman_normal.jpg
</avataruri>
<suitable>0</suitable>
答案 0 :(得分:1)
你误用了XmlTextWriter
。
XmlTextWriter
通过转义文本和编写标记名称来帮助您生成自己的XML
调用WriteString()
会将您传递的文本写为XML content ,正确转义特殊字符。
如果您有一个现有XML字符串,并且想要将其写入文件,则应使用File
类将其写为任何其他字符串。
你甚至不需要解码字节;你可以直接把它们写到磁盘上。