我正在尝试让我的c#读取每个标记和值,并试图解决这个问题 这是我的XML数据
<?xml version="1.0" encoding="utf-8"?>
<Word1>Trying</Word1>
<Word2>To</Word2>
<Word3>Learn</Word3>
我希望输出像这样
Word1 => Trying
Word2 => To
Word3 => Learn
在c#
中实现这一目标的任何帮助答案 0 :(得分:0)
这不是有效的XML。您只能在XML文档中有一个根元素。
所以输入应该是这样的:
<?xml version="1.0" encoding="utf-8"?>
<Words>
<Word1>Trying</Word1>
<Word2>To</Word2>
<Word3>Learn</Word3>
</Words>
你可以在C#中以很多方式解析它。两种常见的方法是使用XmlDocument或使用XDocument来自&#34; LINQ to XML&#34;然后循环遍历每个元素或通过名称或XPath读取它们。这是一个相当广泛的主题,但我想你只是被困在这里,因为你想拥有多个根元素(这也是不可能的)。
答案 1 :(得分:0)
试试这个
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Linq;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
string input =
"<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
"<Root>" +
"<Word1>Trying</Word1>" +
"<Word2>To</Word2>" +
"<Word3>Learn</Word3>" +
"</Root>";
XDocument doc = XDocument.Parse(input);
var results = doc.Descendants("Root").Select(x => new {
word1 = x.Element("Word1").Value,
word2 = x.Element("Word2").Value,
word3 = x.Element("Word3").Value
}).FirstOrDefault();
}
}
}