0
LinQとXmlで経験はありません。ファイルからxmlノードを既存のxmlファイルに追加します
file1.xml
<?xml version="1.0" encoding="utf-8"?>
<RootNode>
<SubNode>
<NodeA id="1" />
<NodeB id="2" />
<NodeC id="3" />
</SubNode>
<LonelyNode/>
</RootNode>
file2.xml
<?xml version="1.0" encoding="utf-8"?>
<RootNode>
<SubNode>
<NodeD id="1" />
<NodeE id="2" />
<NodeF id="3" />
</SubNode>
<LonelyNode/>
</RootNode>
実際のコードを次のように私は2つのXMLファイルを結合する必要が
string fileName1 = "file1.xml";
string fileName2 = "file2.xml";
string filePath_file1 = String.Format("{0}{1}", rootDirectory, fileName1);
string filePath_file2 = String.Format("{0}{1}", rootDirectory, fileName2);
// create xml document from file1.xml
var document = XDocument.Load(filePath_file1.xml);
// add file2.xml
document.Root.Add(XDocument.Load(filePath_file2).Root.Elements());
Console.WriteLine(document);
Console.ReadLine();
実際の出力
<?xml version="1.0" encoding="utf-8"?>
<RootNode>
<SubNode>
<NodeA id="1" />
<NodeB id="2" />
<NodeC id="3" />
</SubNode>
<LonelyNode/>
<SubNode>
<NodeD id="1" />
<NodeE id="2" />
<NodeF id="3" />
</SubNode>
<LonelyNode/>
</RootNode>
は、私が最初のファイルにコピーするノードの特定することができますどのように出力
<?xml version="1.0" encoding="utf-8"?>
<RootNode>
<SubNode>
<NodeA id="1" />
<NodeB id="2" />
<NodeC id="3" />
<NodeD id="1" />
<NodeE id="2" />
<NodeF id="3" />
</SubNode>
<LonelyNode/>
</RootNode>
を望んでいましたか?私は<SubNode>
の内容をfile2からのみコピーしたいと思います。
それは動作しますが、あなたに感謝!サブノードの内容をノード名(NodeA、NodeB、...)でソートすることもできます。 – Muflix
可能です。 –
ここでソートするための解決策が見つかりましたhttp://stackoverflow.com/questions/3469801/sorting-all-the-elements-in-a-xdocumentありがとう – Muflix