为什么我的XML阅读器阅读所有其他元素? [英] Why is my XML reader reading every other element?
本文介绍了为什么我的XML阅读器阅读所有其他元素?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我建立了一个非常简单的表,该表显示4列和4行.执行以下代码时,它将显示.xml文件中的所有其他元素.它不会按表行区分.它通读无任何问题,而且我已经运行了xml验证程序,因此它不是语法问题.
I've built a very simple table that displays 4 columns and 4 rows. When the following code is executed it displays every other element in the .xml file. It does not discriminate per table row. It reads through without any problem and I have run xml validators so it not a syntax issue.
public partial class lblXmlOutput : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
XmlReaderSettings settings = new XmlReaderSettings();
settings.ConformanceLevel = ConformanceLevel.Document;
settings.IgnoreWhitespace = true;
settings.IgnoreComments = true;
XmlReader reader = XmlReader.Create(Server.MapPath("Part2XMLex.xml"), settings);
string result = "";
while (reader.Read())
{
if (reader.IsStartElement("td"))
result += reader.ReadElementContentAsString();
txtOutput.Text = result;
}
}
}
推荐答案
由于 .Read()
和 .ReadElementContentAsString()
(无参数重载)都会移动阅读器到下一个节点.
Because both .Read()
and .ReadElementContentAsString()
(the parameterless overload) move the reader to the next node.
将您的 while
条件更改为:
while (!reader.EOF)
然后添加:
else reader.Read();
这篇关于为什么我的XML阅读器阅读所有其他元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文