Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过标记和写入读取xml_C# - Fatal编程技术网

C# 通过标记和写入读取xml

C# 通过标记和写入读取xml,c#,C#,在foreach循环中通过标记读取xml xml示例: <users> <user> <id>12345567</id> <name>Ronsna Stedinberg</name> </user> <user> <id>12345568</id> <name>Sonsna Dtedinberg</name> </u

在foreach循环中通过标记读取xml xml示例:

<users>
 <user>
  <id>12345567</id> 
  <name>Ronsna Stedinberg</name> 
 </user>
 <user>
  <id>12345568</id> 
  <name>Sonsna Dtedinberg</name> 
 </user>  
</users>

12345567
朗斯娜·斯丁伯格
12345568
索斯纳·德丁伯格

现在我想将一个标记及其所有子标记保存到一个新文件中

这就是循环用户节点的方式

string xml = @"<users><user><id>12345567</id><name>Ronsna Stedinberg</name></user><user><id>12345568</id><name>Sonsna Dtedinberg</name></user></users>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);

XmlNodeList nodeList = doc.SelectNodes("//users/user");
foreach (XmlNode node in nodeList)
{
    string id = node.SelectSingleNode("id").InnerText;
    string name = node.SelectSingleNode("name").InnerText;
}
stringxml=@“12345567Ronsna stedinbergG12345568sonsna Dtedinberg”;
XmlDocument doc=新的XmlDocument();
doc.LoadXml(xml);
XmlNodeList nodeList=doc.SelectNodes(“//users/user”);
foreach(节点列表中的XmlNode节点)
{
字符串id=节点。选择SingleNode(“id”)。InnerText;
字符串名称=节点。选择SingleNode(“名称”)。InnerText;
}

Linq到XML的方法:

// Assuming your xml is named data.xml
XDocument xml = XDocument.Load("data.xml");

var tags = from x in xml.Descendants("user")                       
               select new
               {
                   id = x.Element("id").Value,
                   name = x.Element("name").Value
               };

foreach (var tag in tags)
{
    Console.WriteLine(tag.id);
    Console.WriteLine(tag.name);
}