对XML后进行解析构表,修改其中的某个结点值..
如内容为:
<data>
<proposal org_code="11" psn_code="255" etitle="mmmmmmm" ntype="MT"> </proposal>
<budget prp_code="12" tNo="2" item_name="AA" tMoney="20.00" re="aa"> </budget>
<budget prp_code="13" tNo="6" item_name="BB" tMoney="30.00" re="bb"> </budget>
<targets id="12" tag="bbb"> </targets>
</data> 我现在要在所有budget的结点最后加上一条新的budget记录,
如<budget prp_code="15" tNo="11" item_name="CC" tMoney="50.00" re="cc"> </budget> 最后形成如下:
<data>
<proposal org_code="11" psn_code="255" etitle="mmmmmmm" ntype="MT"> </proposal>
<budget prp_code="12" tNo="2" item_name="AA" tMoney="20.00" re="aa"> </budget>
<budget prp_code="13" tNo="6" item_name="BB" tMoney="30.00" re="bb"> </budget>
<budget prp_code="15" tNo="11" item_name="CC" tMoney="50.00" re="cc"> </budget>
<targets id="12" tag="bbb"> </targets>
</data>
请问应该怎样写,跪求高手指教!
如内容为:
<data>
<proposal org_code="11" psn_code="255" etitle="mmmmmmm" ntype="MT"> </proposal>
<budget prp_code="12" tNo="2" item_name="AA" tMoney="20.00" re="aa"> </budget>
<budget prp_code="13" tNo="6" item_name="BB" tMoney="30.00" re="bb"> </budget>
<targets id="12" tag="bbb"> </targets>
</data> 我现在要在所有budget的结点最后加上一条新的budget记录,
如<budget prp_code="15" tNo="11" item_name="CC" tMoney="50.00" re="cc"> </budget> 最后形成如下:
<data>
<proposal org_code="11" psn_code="255" etitle="mmmmmmm" ntype="MT"> </proposal>
<budget prp_code="12" tNo="2" item_name="AA" tMoney="20.00" re="aa"> </budget>
<budget prp_code="13" tNo="6" item_name="BB" tMoney="30.00" re="bb"> </budget>
<budget prp_code="15" tNo="11" item_name="CC" tMoney="50.00" re="cc"> </budget>
<targets id="12" tag="bbb"> </targets>
</data>
请问应该怎样写,跪求高手指教!
再给新添加的budget节点添加属性和属性值。
xdoc.LoadXml(@"<data>
<proposal org_code=""11"" psn_code=""255"" etitle=""mmmmmmm"" ntype=""MT""> </proposal>
<budget prp_code=""12"" tNo=""2"" item_name=""AA"" tMoney=""20.00"" re=""aa""> </budget>
<budget prp_code=""13"" tNo=""6"" item_name=""BB"" tMoney=""30.00"" re=""bb""> </budget>
<targets id=""12"" tag=""bbb""> </targets>
</data>");
XmlNode budget = xdoc.SelectSingleNode("data/budget");
budget = budget.Clone();
budget.Attributes["prp_code"].Value = "15";
budget.Attributes["tNo"].Value = "11";
budget.Attributes["item_name"].Value = "CC";
budget.Attributes["tMoney"].Value = "50.00";
budget.Attributes["re"].Value = "cc";
xdoc.ChildNodes[0].AppendChild(budget);
richTextBox1.Text = xdoc.OuterXml;
xdoc.LoadXml(@"<data>
<proposal org_code=""11"" psn_code=""255"" etitle=""mmmmmmm"" ntype=""MT""> </proposal>
<budget prp_code=""12"" tNo=""2"" item_name=""AA"" tMoney=""20.00"" re=""aa""> </budget>
<budget prp_code=""13"" tNo=""6"" item_name=""BB"" tMoney=""30.00"" re=""bb""> </budget>
<targets id=""12"" tag=""bbb""> </targets>
</data>");
XmlElement budget = xdoc.CreateElement("budget");
XmlAttribute prp_code = xdoc.CreateAttribute("prp_code");
XmlAttribute tNo = xdoc.CreateAttribute("prp_code");
XmlAttribute item_name = xdoc.CreateAttribute("prp_code");
XmlAttribute tMoney = xdoc.CreateAttribute("prp_code");
XmlAttribute re = xdoc.CreateAttribute("prp_code");
budget.Attributes.Append(prp_code);
budget.Attributes.Append(tNo);
budget.Attributes.Append(item_name);
budget.Attributes.Append(tMoney);
budget.Attributes.Append(re);
xdoc.ChildNodes[0].AppendChild(budget);
prp_code.Value = "15";
tNo.Value = "11";
item_name.Value = "CC";
tMoney.Value = "50.00";
re.Value = "cc";
richTextBox1.Text = xdoc.OuterXml;
结构固定的话,用XSD去搞吧,省去了不少代码