我有一个像这样的 XML 文件:
<position>
<Game> Batman Arkham City </Game>
<Movie> Inception </Movie>
<Movie> Dark Knight </Movie>
[etc...]
</position>
我想要的只是删除现有文件中的一行,如果InnerText == TextBox
. 例如:如果我将“Inception”文本放入文本框中并按下按钮,那么程序将删除带有“Inception”的行。我怎样才能做到这一点?我尝试了很多不同的方法。对我来说非常重要的是,我不想更改 XML 文件的格式,因为我已经创建了另一个选项的代码,例如将项目输入到列表框中,或者在当前 XML 文件中创建新标题。
你能告诉我该怎么做吗?
编辑(来自评论):我最后一次尝试这样做:
XmlDocument dok = new XmlDocument();
dok.Load("DataBase/list.xml");
foreach(XmlNode node in dok.SelectNodes("position"))
{
if (node.SelectSingleNode("Game").InnerText == searchTxt.Text)
{
node.RemoveChild(node);
}
}
dok.Save("DataBase/list.xml");