编辑后保存XML文件的问题

时间:2017-09-04 13:22:21

标签: c# .net xml-parsing

我有一个XML文件,上面有一些数据......例如

<?xml version="1.0" encoding="utf-8"?>
<CreateAndSendMessageRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns="http://schemas.communisis.com/lv">
<CompositionRequest>
<Metadata xmlns="http://lv.com/gi/si/common/CommonTypes">
<PolicyReference>250028766505DN</PolicyReference>
<AccountReference>Test1234</AccountReference>
<QuoteReference>Test3214</QuoteReference>
<OutboundTransactionID>string</OutboundTransactionID>
</Metadata>

现在我想用一些虚拟数据替换POLICY REFERENCE值。我能够做到这一点,但现在我必须将其保存为具有不同文件名的新文件。 我怎么能实现这一点.. 作为参考,我正在给我的代码。

XmlDocument doc = new XmlDocument();
doc.Load(filepath);
XmlNodeList node = doc.GetElementsByTagName("PolicyReference");
var item =node.Item(0);
string value = item.FirstChild.Value;
string nevalue = value.Replace(value, "Test123");
doc.DocumentElement.;
doc.Save(@"C:\Test\file.xml");

1 个答案:

答案 0 :(得分:0)

xml无效。

无论如何,这是如何让它发挥作用:

Xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<CreateAndSendMessageRequest>
<CompositionRequest>
<Metadata xmlns="http://lv.com/gi/si/common/CommonTypes">
<PolicyReference>250028766505DN</PolicyReference>
<AccountReference>Test1234</AccountReference>
<QuoteReference>Test3214</QuoteReference>
<OutboundTransactionID>string</OutboundTransactionID>
</Metadata>
</CompositionRequest>
</CreateAndSendMessageRequest>

代码:

XmlDocument doc = new XmlDocument();
doc.Load("bho.xml");
XmlNodeList node = doc.GetElementsByTagName("PolicyReference");
node[0].InnerText = "Test123";
doc.Save("file.xml");

结果xml:

<?xml version="1.0" encoding="UTF-8"?>
<CreateAndSendMessageRequest>
  <CompositionRequest>
    <Metadata xmlns="http://lv.com/gi/si/common/CommonTypes">
      <PolicyReference>Test123</PolicyReference>
      <AccountReference>Test1234</AccountReference>
      <QuoteReference>Test3214</QuoteReference>
      <OutboundTransactionID>string</OutboundTransactionID>
    </Metadata>
  </CompositionRequest>
</CreateAndSendMessageRequest>

希望它可以帮助你^^