読者です 読者をやめる 読者になる 読者になる

C#でXML操作

using System;
using System.Linq;
using System.Windows.Forms;
using System.Xml.Linq;

結合

XDocument xdoc1 = XDocument.Load("http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pubmed&mode=XML&id=14993493");
XDocument xdoc2 = XDocument.Load("http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pubmed&mode=XML&id=15919696");
xdoc1.Element("PubmedArticleSet").Add(xdoc2.Element("PubmedArticleSet").Element("PubmedArticle"));
xdoc1.Save("merge_file.xml");

消去

XDocument doc = XDocument.Load("http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pubmed&mode=XML&id=14993493+15919696+21974702+21303965");
var n = doc.Element("PubmedArticleSet").Elements("PubmedArticle").ToArray();
foreach(XElement d in n){ 
if (d.Element("MedlineCitation").Element("PMID").Value == "21974702") 
{ 
d.Remove(); 
} 
}
doc.Save("removo_file.xml");


新規作成

XDocument doc = new XDocument(); XElement rootElem = new XElement("PubmedArticleSet");
doc.Add(rootElem);
doc.Save("newfile.xml");


XSLファイルと関連付ける

XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("myxslt.xsl");
xslt.Transform("sample.xml", "sample.html");