-6

1 つの文字列変数に以下の xml 文字列があります。

string xmlString = "<a:ORegions>
                             <a:ID>1</a:ID> 
                             <a:regionCode>US</a:regionCode> 
                    </a:ORegions>
                    <a:ORegions>
                             <a:ID>2</a:ID> 
                             <a:regionCode>CANADA</a:regionCode> 
                    </a:ORegions>
                    <a:ORegions>
                    <a:ID>3</a:ID> 
                             <a:regionCode>ASIA</a:regionCode> 
                    </a:ORegions>

次に、regionCode の値にアクセスしたいと思います。つまり、US、CANADA、ASIA です。

C#を使用してそれを行う方法。私はxml解析が初めてです。

4

3 に答える 3

1

System.Xml名前空間クラス、特にメソッドXmlDocumentなどを介して、その文字列を逆シリアル化できます (さまざまな構文エラーを修正すると仮定します) 。名前空間 ( inなどは名前空間) にアクセスするには、 . 次に、名前空間 (どこかに定義する必要があります) をマネージャーに登録し、.Loadaa:OregionsXmlNamespaceManagerXmlDocument

于 2013-01-18T10:48:09.320 に答える
1

使用するLinqToXml

var doc = XDocument.Parse(xmlString);

その後、次の要素、値、および属性にアクセスできます。

XNamespace xmlNamespace = "a";

//e.g. Retrieve's a list of regioncodes...
var ids = doc.Elements(xmlNamespace + "ORegions")
             .Select(r => r.Element("regionCode").Value);
于 2013-01-18T10:51:15.913 に答える
0
XmlDocument document = new XmlDocument();
document.Load(filePath);

foreach (XmlNode node in document.GetElementsByTagName("a:regionCode"))
    Console.WriteLine(node.InnerText);
于 2013-01-18T11:09:04.833 に答える