C# 使用C语言对XML文件进行编辑#

C# 使用C语言对XML文件进行编辑#,c#,wpf,xelement,C#,Wpf,Xelement,我正在开发一个WPF应用程序,我有一个简单的XML文件,我正在使用“XmlDocument”对其进行解析,对于readinh部分来说工作得很好。 我希望用户能够添加、编辑或删除任何节点,并将这些更改保存到文件中 我尝试使用“XElement”,但它似乎改变了实例本身,而不是文件 我的XML文件如下所示: <Configuration> <A_0.04_5> <ML407Configuration> <AM_

我正在开发一个WPF应用程序,我有一个简单的XML文件,我正在使用“XmlDocument”对其进行解析,对于readinh部分来说工作得很好。 我希望用户能够添加、编辑或删除任何节点,并将这些更改保存到文件中

我尝试使用“XElement”,但它似乎改变了实例本身,而不是文件

我的XML文件如下所示:

<Configuration>
    <A_0.04_5>
        <ML407Configuration>
            <AM_Amp>10</AM_Amp>
            <AMRJ_Amp>10</AMRJ_Amp>
            <FM_Freq>20</FM_Freq>
            <FM_Phase_Shift>20</FM_Phase_Shift>
        </ML407Configuration>
        <BertConfiguration>
            <BERT_LR>25.78125</BERT_LR>
            <BERT_PRBS>7</BERT_PRBS>
            <BERT_Scaling>1000</BERT_Scaling>
        </BertConfiguration>
    </A_0.04_5>
    <B_1.333_0.15>
        <ML407Configuration>
            <AM_Amp>10</AM_Amp>
            <AMRJ_Amp>10</AMRJ_Amp>
            <FM_Freq>20</FM_Freq>
            <FM_Phase_Shift>20</FM_Phase_Shift>
        </ML407Configuration>
        <BertConfiguration>
            <BERT_LR>25.78125</BERT_LR>
            <BERT_PRBS>7</BERT_PRBS>
        </BertConfiguration>
    </B_1.333_0.15>

    <C_4_0.05>
        <ML407Configuration>
            <BUJ_LR>25</BUJ_LR>
            <BUJ_Pattern>7</BUJ_Pattern>
            <PM_BUJ_Amp>7</PM_BUJ_Amp>
            <BUJ_Amp>80</BUJ_Amp>
            </ML407Configuration>
        <BertConfiguration>
            <BERT_LR>25.78125</BERT_LR>
            <BERT_PRBS>7</BERT_PRBS>
        </BertConfiguration>
    </C_4_0.05> 
</Configuration>

我看到过很多类似的问题,但我不知道其中是否有直接更改为文件的问题

将XML结构从文件加载到内存中。对该结构所做的任何更改也将在内存中完成。如果要将这些更改写回文件(技术上称为),则需要调用。

是的,编辑后需要保存文件,
xml.save(filePath)
string filePath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)+"/Configuration.xml";
XElement xml = XElement.Load(filePath);
// This seems to remove the node from xml instance and not from the file
// Should I save the file again or is there another way to do it
// Same applies for add and edit
xml.Elements("C_4_0.05").Remove();