我在两个不同的文件中有相同的 XML。在一个文件中,XML 是缩进的——另一个不是。XML如下:
<?xml version="1.0" encoding="utf-8" ?>
<test>
<element1></element1>
<element2></element2>
<element3></element3>
</test>
使用以下代码时,这两个文件得到不同的结果:
XmlReaderSettings settings = new XmlReaderSettings
{
IgnoreComments = true,
IgnoreWhitespace = false,
IgnoreProcessingInstructions = true
};
using (XmlReader reader = XmlReader.Create(invoiceStream, settings))
{
reader.MoveToContent();
reader.Read();
var prevLocalname = reader.LocalName;
var element = XNode.ReadFrom(reader) as XElement;
var newLocalname = reader.LocalName;
}
使用缩进文件,我得到以下值:
prevLocalname = "";
newLocalname = "element1";
在文件未缩进的情况下,我得到以下值:
prevLocalname = "element1";
newLocalname = "element2";
谁能解释一下?