2012-01-19 4 views
0

文字列を解析して初期化せずにSystem.Xml.XmlDocumentを作成することはできますか?
私はXmlDocumentオブジェクトを初期化する通常の方法を知らXMLに<rootEl />文字列からSystem.Xml.XmlDocumentを作成します。

を表すXmlDocumentオブジェクトを作成するには、以下のように文字列構文解析することによってされます。しかし、それは概説した方法を使用することが可能である

System.Xml.XmlDocument doc = new System.Xml.XmlDocument(); 
doc.LoadXml("<rootEl />"); 

以下?

System.Xml.XmlDocument doc = new System.Xml.XmlDocument("rootEl");  

(私がSystem.Xml.Linqをより柔軟であるように思わ理解しますが、今の私はオールドスクールで立ち往生しています。)

答えて

2

まあ、それは正確コードあなたとそれを実行することはできません与えられた。 XmlDocumentのコンストラクタは、コンテンツをストリームまたは文字列として受け取りません。

一方、あなたが書くことができます:

XmlDocument doc = new XmlDocument(); 
doc.AppendChild(doc.CreateElement("rootEl")); 

をあなたが望むことですか?あなたが達成しようとしていることについてもっと具体的にしてください。

+0

それは、文字列から解析する「全体」XMLせずに行われます。受け入れられる! – leiflundgren

-1

私はあなたが望むようにすることはできないと思います。これは何が必要ですが、あなたはこのようにそれを行うことができれば

わからない:

System.Xml.XmlDocument doc = new System.Xml.XmlDocument(); 
FileStream fs = new FileStream("whatever.xml", FileMode.Create); 

XmlWriter writer = XmlWriter.Create(fs); 


writer.WriteRaw("<rootEl>"); 
writer.WriteRaw("<rootEl />"); 

writer.Flush(); 
fs.Close(); 
+0

あなたはそれを行うだけでなく(Jonの答えを参照)、あなたのコードは無効なXMLを書きます。 – svick

+0

これは本当です。ありがとうございました。 – gabsferreira

関連する問題