如何以窗口形式修改现有XML文件中的XML元素值 [英] How to modify XML element value in existing XML file in window form

查看:61
本文介绍了如何以窗口形式修改现有XML文件中的XML元素值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想以窗口形式修改现有XML文件中的XML元素值。

XML文件结构如下:



< pre lang =xml> <? xml version = 1.0 encoding = utf-8 standalone = > ;
< Testtakerinfo >
< 推理 >
< QN > 1 < / QN >
< Ans > 0 < / Ans >
< /推理 >
< 推理 >
< QN > 1 < / QN >
< Ans > 0 < / Ans >
< /推理 >
< 推理 >
< QN > ; 2 < / QN >
< Ans > 0 < / Ans >
< /推理 >
< 推理 >
< QN > 3 < / QN >
< Ans > 0 < / Ans >
< / Reasonin g >
< 推理 >
< QN > 4 < / QN >
< Ans > 0 < / Ans >
< /推理 >
< 推理 >
< QN
> 5 < / QN >
< < span class =code-leadattribute> Ans > 0 < / Ans >
< < span class =code-leadattribute> /推理 >

< ; / Testtakerinfo >





我想更新QN 1,ans 0到1.



请帮帮我

解决方案

试试这个:

 XmlDocument xmlDoc = new XmlDocument(); 
xmlDoc.Load(yourFileName);

XmlNodeList nodes = xmlDoc.SelectNodes(/ Testtakerinfo / Reasoning);
nodes [yourElementIndex] .Attributes [Ans]。Value =newValue;
xmlDoc.Save(yourFileName);



yourElementIndex在此考试中为0,newValue为1



如果要为QN的所有元素更改Ans是1这样做:

 XmlDocument xmlDoc = new XmlDocument(); 
xmlDoc.Load(yourFileName);

XmlNodeList nodes = xmlDoc.SelectNodes(/ Testtakerinfo / Reasoning);
foreach(节点中的XmlNode xn)
{
if(xn.Attributes [QN]。值== 1)
{
xn.Attributes [ Ans] .Value =newValue;
}
}
xmlDoc.Save(yourFileName);


I want to modify XML element value in existing XML file in window form.
XML file structure is given below.

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Testtakerinfo>
  <Reasoning>
    <Q.N.>1</Q.N.>
    <Ans>0</Ans>
  </Reasoning>
  <Reasoning>
    <Q.N.>1</Q.N.>
    <Ans>0</Ans>
  </Reasoning>
  <Reasoning>
    <Q.N.>2</Q.N.>
    <Ans>0</Ans>
  </Reasoning>
  <Reasoning>
    <Q.N.>3</Q.N.>
    <Ans>0</Ans>
  </Reasoning>
  <Reasoning>
    <Q.N.>4</Q.N.>
    <Ans>0</Ans>
  </Reasoning>
  <Reasoning>
    <Q.N.>5</Q.N.>
    <Ans>0</Ans>
  </Reasoning>

</Testtakerinfo>



I want to update Q.N. 1, ans 0 to 1.

Please help me

解决方案

Try this:

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(yourFileName);

XmlNodeList nodes = xmlDoc.SelectNodes("/Testtakerinfo/Reasoning");
nodes[yourElementIndex].Attributes["Ans"].Value = "newValue";
xmlDoc.Save(yourFileName);


yourElementIndex is 0 in this examle and newValue is 1

If you want to change Ans for all elements where Q.N. is 1 do so:

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(yourFileName);

XmlNodeList nodes = xmlDoc.SelectNodes("/Testtakerinfo/Reasoning");
foreach (XmlNode xn in nodes)
{
   if(xn.Attributes["Q.N."].Value == 1)
   {
      xn.Attributes["Ans"].Value = "newValue";
   }
}
xmlDoc.Save(yourFileName);


这篇关于如何以窗口形式修改现有XML文件中的XML元素值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆