如何以窗口形式修改现有XML文件中的XML元素值 [英] How to modify XML element value in existing XML file in window form
问题描述
我想以窗口形式修改现有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 >
< /推理 >
< 推理 >
<
< < 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屋!