1

私はこのようなXMLファイルを持っています

<ss:demo>
<ss:Name>
    <ss:FirstName>First</ss:FirstName>
    <ss:SecondName>Second</ss:SecondName>
</ss:Name>
<ss:country code="IN">India</ss:country>
</ss:demo>

C# を使用してこれを読み取る方法を教えてください。これで私を助けてください。それを読むための最も簡単な方法はどれですか?それを DataSet に読み込もうとしましたが、エラーが表示されます。

4

2 に答える 2

6

C# を使用して XML ドキュメントまたはその一部を読み取る方法はいくつかあります。XML ドキュメントで何をしたいのかをより具体的に示している場合は、コミュニティがより具体的なガイダンスを提供できます。

上位の選択肢は次のとおりです。

Linq から XML

http://msdn.microsoft.com/en-us/library/bb387098.aspx

http://msdn.microsoft.com/en-us/library/bb387065.aspx

XDocument (Linq to XML フレームワークの一部)

http://msdn.microsoft.com/en-us/library/bb387063.aspx

XmlDocument

http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx

XPath

http://msdn.microsoft.com/en-us/library/ms256471.aspx

于 2012-05-07T04:49:06.713 に答える
3

LINQ to XMLだけではどうですか?

これを考えると:

var xml = "<ss:demo>\r\n<ss:Name>\r\n    <ss:FirstName>First</ss:FirstName>\r\n    <ss:SecondName>" +
"Second</ss:SecondName>\r\n</ss:Name>\r\n<ss:country code=\"IN\">India</ss:country>\r\n</ss" +
":demo>";

IN(引用符で囲む必要があることに注意してください"IN"

いくつかの名前空間を宣言し、それを読み込みます:

var mngr = new XmlNamespaceManager( new NameTable() );
mngr.AddNamespace( "ss", "urn:ignore" ); // or proper URL
var parserContext = new XmlParserContext(null, mngr, null, XmlSpace.None, null);

上記のように文字列から読み取る場合:

var txtReader = new XmlTextReader( xml, XmlNodeType.Element, parserContext );

代わりにファイルから読み取る場合:

var txtReader = new XmlTextReader( new FileStream(filename, FileMode.Open), XmlNodeType.Element, parserContext );

次にロードします。

var ele = XElement.Load( txtReader );

ele必要なものがすべて含まれています。

于 2012-05-07T04:47:46.833 に答える