2011-01-05 49 views
19

我有一個XML字符串。我需要將這個字符串轉換爲dotnet中的XMLTextReader(System.Xml.XMLTextReader)類型。如何讀取XML字符串到XmlTextReader的類型

我用下面的代碼:

string szInputXml = "<TestDataXml><DataName>testing</DataName></TestDataXml>" ; 
XmlTextReader reader = new XmlTextReader(new System.IO.StringReader(szInputXml)); 

讀者是執行後空字符串裏面。

請幫我找出需要做的讓與給定的字符串來填充XmlTextReader的是什麼。

+3

不要使用'新的XmlTextReader()'。從.NET 2.0開始已經被棄用了。改用'XmlReader.Create()'。 – 2011-01-05 06:28:25

+0

另外,你必須有其他的事情。一個'new'表達式不能返回null。 – 2011-01-05 06:31:11

+0

@JohnSaunders,爲什麼不推薦? – 2013-01-15 14:02:31

回答

38

如何確定如果字符串是空的?

string szInputXml = "<TestDataXml><DataName>testing</DataName></TestDataXml>"; 
XmlTextReader reader = new XmlTextReader(new System.IO.StringReader(szInputXml)); 
reader.Read(); 
string inner = reader.ReadInnerXml(); 

沒有第三行「內」確實是空的。現在它包含測試。

+0

請記住,這就像是一個IDataReader.Read(),這意味着當您執行.Read時,它會轉到下一個元素。請參閱https://msdn.microsoft.com/en-us/library/system.xml.xmlreader.read%28v=vs.110%29.aspx – granadaCoder 2015-10-12 16:58:38