如果有人能解释为什么当我的XML文档(附加图像)具有根元素时出现“缺少根元素”错误,那么他们将赢得一匹小马,从它的眼中射出激光。
代码:
if (ISF.FileExists("Players.xml"))
{
string xml;
using (IsolatedStorageFileStream rawStream = ISF.OpenFile("Players.xml", FileMode.Open))
{
StreamReader reader = new StreamReader(rawStream);
xml = reader.ReadToEnd();
XmlReaderSettings settings = new XmlReaderSettings { IgnoreComments = true, IgnoreWhitespace = true };
XmlReader xmlReader = XmlReader.Create(reader, settings);
while (xmlReader.Read())
{
switch (xmlReader.NodeType)
{
case XmlNodeType.Element:
switch (xmlReader.Name)
{
case "numberOfPlayers":
string nodeValue = xmlReader.ReadContentAsString();
int NODEVALUE = int.Parse(nodeValue);
MessageBox.Show(" " + NODEVALUE);
break;
}
break;
}
break;
}
reader.Close();
}
}
最佳答案
您的问题是由于以下原因:
xml = reader.ReadToEnd();
这会将读取器流定位到末尾,以便在执行
XmlReader.Create
时,流中没有任何内容可供读取。如果需要填充
xml
字符串,则需要在XmlReader.Create
之前关闭并重新打开阅读器。否则,删除或注释掉该行将解决您的问题。