vb.net将UTF-8中的“&”转换为“&”
问题描述:
我正在使用MS XmlWriter以UTF-8创建XML文件。vb.net将UTF-8中的“&”转换为“&”
Dim settings As New XmlWriterSettings()
settings.Indent = True
settings.IndentChars = " "
settings.Encoding = System.Text.Encoding.UTF8
settings.ConformanceLevel = ConformanceLevel.Fragment
Using xWriter As XmlWriter = XmlWriter.Create(filePath, settings)
如果我尝试使用WriteElementString
与&
值写我在输出XML得到&
。 UTF-8不应该保留为“&”吗?
答
转义特殊字符与编码无关。无论您的编码是UTF-8还是其他任何文件,&
和<
都必须始终以XML格式转义。
[XML中的无效字符]的可能重复(https://*.com/questions/730133/invalid-characters-in-xml) –