2016-04-12 25 views
-3

をファイルにXMLクエリの結果を保存します。次の操作を実行する必要性で、C#のでC#の - 私は、次のXMLファイル持って

<?xml version="1.0" encoding="utf-8"?> 
<Root> 
    <Seance ID="4"> 
    <Date_Effective>15-04-20</Date_Effective> 
    <Installation>GGBB</Installation> 
    <Time>09:00:00 </Time> 
    </Seance> 
    <Seance ID="5"> 
    <Date_Effective>15-04-20</Date_Effective> 
    <Installation>GGBB</Installation> 
    <Time>15:15:00 </Time> 
    </Seance> 
    <Seance ID="6"> 
    <Date_Effective>15-04-20</Date_Effective> 
    <Installation>HHFF</Installation> 
    <Time>19:00:00 </Time> 
    </Seance> 
    <Seance ID="7"> 
    <Date_Effective>15-04-20</Date_Effective> 
    <Installation>HHFF</Installation> 
    <Time>17:00:00 </Time> 
    </Seance> 
    <Seance ID="8"> 
    <Date_Effective>15-04-20</Date_Effective> 
    <Installation>HHFF</Installation> 
    <Time>16:00:00 </Time> 
    </Seance> 
</Root> 

を:

  1. オープンXMLファイル
  2. 新しいXMのものノードを保存彼らの「TIME」の値を持つフィールド「インストール」
  3. 注文して
  4. の値を持つすべてのノード「HHFF」を選択Lファイル

どうすればいいですか?どうもありがとう!

+1

あなたは何を試しましたか? –

+0

何か試しましたか?どのような問題がありますか? –

+1

'どうすればいいですか? 'お気に入りの検索エンジンで関連するキーワードを検索し、サンプルコードを修正して、目的のものを達成しようとします。 – Jonesopolis

答えて

0

最も簡単な方法は、Linq to XMLを使用することです。そのコードの下

string xfilepath = @"EnterFullPathToXmlFile.xml"; 
XDocument xsrcdoc = XDocument.Load(xfilepath); 
XDocument xdstdoc = new XDocument(xsrcdoc.Declaration, 
     new XElement("Root", 
       xsrcdoc.Root.Descendants("Seance") 
       .Where(x=>(string)x.Element("Installation")=="HHFF") 
       .OrderBy(x=>x.Element("Time").Value))); 
xdstdoc.Save("EnterNewFullFileName.xml"); 

注:

xsrcdoc.Root.Descendants("Seance") 
        .Where(x=>(string)x.Element("Installation")=="HHFF") 
        .OrderBy(x=>x.Element("Time").Value) 

戻りIEnumerable<XElement>、あなたが新たに作成されたXML文書のルートにこれを追加することができますので。

詳細については、XDocument Class

+0

ありがとうございます!私は午後すべてこれのようなものを検索しました! – Ben

+0

@Ben、私は助けることができてうれしいです。私の答えを受け入れてください。 –

関連する問題