我想解析以下 xml 以获得richTextBox1 所以显示'John Smith'、'35'、'Jpeg'。

<?xml version="1.0" encoding="utf-8" ?>
- <Games>
- <Gamer Name="John Smith" Age="35" Win%="5.33502797236373">
   <Picture-id>Jpeg</Picture-id>
   <Game>300</Game>
  </Gamer>
</Games>

我已使用以下代码尝试执行此操作 -
StringBuilder output = new StringBuilder();

String xmlString = @"Gamer.xml";

// Create an XmlReader
using (XmlReader reader = XmlReader.Create(new StringReader(xmlString)))
{
    reader.ReadToFollowing("Gamer");
    reader.MoveToFirstAttribute();
    string genre = reader.Value;
    output.AppendLine("Name" + "Age");

    reader.ReadToFollowing("Picture-id");
    output.AppendLine(reader.ReadElementContentAsString());
}

richTextBox1.Text = output.ToString();

出于某种原因,当我执行它时会带回错误 -
'根级别的数据无效。第 1 行,位置 1。'我怎样才能让它工作,任何输入都非常感谢。

最佳答案

StringReader 读取文字字符串。您正在尝试解析字符串“Gamer.xml”,而不是文件的内容。

请改用 StreamReader。

10-08 19:54