前提・実現したいこと
C#を使用して、xmlを編集するプログラムを作成しています。
その中で、xmlに関する処理につまづいており、ご教授いただければ幸いです。
つまづいている箇所は、xmlの削除処理の部分についてです。
「検索条件」に該当する「名前」を持ったxmlデータから[member]を削除する方法を実装しようとしていましたが、うまくいきません。
●【実現したい例】以下のようなxmlファイルがあります。
<?xml version="1.0" encoding="utf-8"?><チーム>
<member>
<要素1>検索文字列1</要素1>
<要素2>bbb</要素2>
<要素1>ccc</要素1>
</member>
<member>
<要素1>検索文字列2</要素1>
<要素2>bbb</要素2>
<要素1>ccc</要素1>
</member>
<member>
<要素1>検索文字列3</要素1>
<要素2>bbb</要素2>
<要素1>ccc</要素1>
</member>
<member>
<要素1>検索文字列4</要素1>
<要素2>bbb</要素2>
<要素1>ccc</要素1>
</member>
</チーム>
【実行したい内容】
・検索文字=「検索文字列1」をxmlから検索する。
・検索したxmlの4行目にある、「検索文字列1」と該当したなら、Remove()を使用して削除する。
※検索文字列は、visualstudioのテキストボックスから取得しようと考えております。
試したこと
各技術サイト様を調べて、Xelementやforeachを用いる方法など、複数調べてみましたがどれもうまくいきませんでした。
特に、該当する検索条件を比較する部分に問題があるのでしょうか?
作成中のプログラム例
string FilePath = @"C:\sample.xml";
XElement xdoc = XElement.Load(FilePath);
IEnumerable<string> infos = from item in xdoc.Elements("member")
where item.Element("要素1").Value == "検索文字列1"
select item.Element("要素1").Value;
foreach(XmlElemnt elemnt in infos)
{
//検索文字列の照合… 失敗する部分
//照合が可能であればifを使用して、Removeの処理を行いたい。
}
補足情報(FW/ツールのバージョンなど)
visualstudio2019を使用
回答2件
あなたの回答
tips
プレビュー