在不更改编码和保留文件格式的情况下解析xml文件
原始xml文件使用在不更改编码和保留文件格式的情况下解析xml文件,xml,vb.net,encoding,Xml,Vb.net,Encoding,原始xml文件使用UTF-8编码,无BOM <?xml version="1.0" encoding="UTF-8"?> <some_text> <ada/> <file/> <title><![CDATA[]]></title> <code/> <parathrhseis/> </some_text> 文本书写正确,但编码更改为带BO
UTF-8编码,无BOM
<?xml version="1.0" encoding="UTF-8"?>
<some_text>
<ada/>
<file/>
<title><![CDATA[]]></title>
<code/>
<parathrhseis/>
</some_text>
文本书写正确,但编码更改为带BOM的UTF-8,并且它也更改为添加空格:
<?xml version="1.0" encoding="UTF-8"?>
<some_text>
<ada /> <- here
<file /> <- here
<title><![CDATA[text]]></title>
<code /> <- here
<parathrhseis /> <- here
</some_text>
这实际上不是解析文件的问题,而是保存文件的问题
有关如何在没有BOM表的情况下保存xml,请参阅本文。
有关守则如下:
Using writer = New XmlTextWriter(".\file.xml", New UTF8Encoding(False))
doc.Save(writer)
End Using
通常,您可以通过XmlTextWriter的.Settings
属性控制文档的格式,但我看不到控制自动关闭元素间距的属性。在保存到文件系统之前,通过将输出保存到流并手动删除“/>”之前的任何空格,您可能会更幸运地对输出进行后处理。这实际上不是解析文件的问题,而是保存文件的问题
有关如何在没有BOM表的情况下保存xml,请参阅本文。
有关守则如下:
Using writer = New XmlTextWriter(".\file.xml", New UTF8Encoding(False))
doc.Save(writer)
End Using
通常,您可以通过XmlTextWriter的.Settings
属性控制文档的格式,但我看不到控制自动关闭元素间距的属性。在保存到文件系统之前,通过将输出保存到流并手动删除“/>”之前的任何空格,您可能会更幸运地对输出进行后处理。这实际上不是解析文件的问题,而是保存文件的问题
有关如何在没有BOM表的情况下保存xml,请参阅本文。
有关守则如下:
Using writer = New XmlTextWriter(".\file.xml", New UTF8Encoding(False))
doc.Save(writer)
End Using
通常,您可以通过XmlTextWriter的.Settings
属性控制文档的格式,但我看不到控制自动关闭元素间距的属性。在保存到文件系统之前,通过将输出保存到流并手动删除“/>”之前的任何空格,您可能会更幸运地对输出进行后处理。这实际上不是解析文件的问题,而是保存文件的问题
有关如何在没有BOM表的情况下保存xml,请参阅本文。
有关守则如下:
Using writer = New XmlTextWriter(".\file.xml", New UTF8Encoding(False))
doc.Save(writer)
End Using
通常,您可以通过XmlTextWriter的.Settings
属性控制文档的格式,但我看不到控制自动关闭元素间距的属性。在保存到文件系统之前,通过将输出保存到流并手动删除“/>”之前的所有空格,您可能会更幸运地对输出进行后处理,这正是我现在要做的。手动删除空格。使用XmlTextWriter
解决了编码问题,但它也将文本UTF-8
更改为UTF-8
!!我也必须改变这一点。只是出于好奇,为什么格式要求如此严格?这就是我现在要做的。手动删除空格。使用XmlTextWriter
解决了编码问题,但它也将文本UTF-8
更改为UTF-8
!!我也必须改变这一点。只是出于好奇,为什么格式要求如此严格?这就是我现在要做的。手动删除空格。使用XmlTextWriter
解决了编码问题,但它也将文本UTF-8
更改为UTF-8
!!我也必须改变这一点。只是出于好奇,为什么格式要求如此严格?这就是我现在要做的。手动删除空格。使用XmlTextWriter
解决了编码问题,但它也将文本UTF-8
更改为UTF-8
!!我也必须改变这一点。只是出于好奇,为什么格式要求如此严格?