2011-01-05 3 views
19

XML 문자열이 있습니다. 이 문자열을 으로 변환해야합니다. XMLTextReader (System.Xml.XMLTextReader) type in dotnet.xml 문자열을 XMLTextReader 유형으로 읽는 방법

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

그러나 실행 후 비어 독자 내부 문자열 :

는 다음 코드를 사용했다.

XMLTextReader가 주어진 문자열로 채워지도록하기 위해 수행해야 할 작업을 이해하도록 도와주십시오.

+3

'new XmlTextReader()'를 사용하지 마십시오. .NET 2.0 이후로 더 이상 사용되지 않습니다. 대신에'XmlReader.Create()'를 사용하십시오. –

+0

또한 계속 진행해야합니다. 'new' 표현식은 null을 반환 할 수 없습니다. –

+0

@ JohnSaunders, 왜 더 이상 사용되지 않습니까? –

답변

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

관련 문제