如何在元素字符串上编写和编辑以后的字符串

时间:2018-09-15 16:59:15

标签: c# xml

我的应用程序生成用于还原/保存表单信息的xml文件。单击按钮等时,我要对其进行编辑。这是xml代码: 我的表单在加载时创建了该xml:

<?xml version="1.0" encoding="ISO-8859-1"?>
<Labels>
  <label1>
    <Internal>
      <Text>Label Text</Text>
      <Name>label1</Name>
    </Internal>
  </label1>
</Labels>

我想在单击按钮后编辑“标签文本”,这可能吗?

2 个答案:

答案 0 :(得分:0)

如果您想保存信息的安全性,那么使用数据库或格式更好的XML会更好,但是,我会尽力回答您的要求。如果我能更好地了解您的实际目标,就可以编辑答案。

假设您的XML位于名为xml的字符串中

如果您知道<text />标记中的旧值,则可以执行以下操作:

var newXml = xml.Replace("<Text>Old Value</Text>","<Text>New Value</Text>");

如果没有,您可以使用

var start = xml.IndexOf("<Text>") + 6;
var end = xml.IndexOf("</Text>");
var oldValue = xml.SubString(start,end-start);
var newXml = xml.Replace($"<Text>{oldValue}</Text>","<Text>New Value</Text>");

同样,这是一个简单的答案,您可以根据自己的意愿选择更好的方法。

答案 1 :(得分:0)

我找到了。

0