13,009
回編集
(→要素の変更) |
|||
554行目: | 554行目: | ||
== LINQ to XMLの使用 == | == LINQ to XMLの使用 == | ||
==== 要素の取得 ==== | ==== 要素の取得 ==== | ||
以下の例では、LINQ to XMLおよび非同期処理を使用してXMLファイルを読み込み、以下に示す要素を読み込んでいる。<br> | |||
また、大きなXMLファイルを効率的に処理するためのストリーミング処理も実装している。<br> | |||
<br> | |||
<u>LINQ to XMLを使用する場合は、System.Xml.Linq名前空間を追加する必要がある。</u><br> | |||
<br> | <br> | ||
* <Hypocenter> -> <Area> -> <Name>の値 | * <Hypocenter> -> <Area> -> <Name>の値 | ||
* <Hypocenter> -> <Area> -> <Code>のtype属性の値 | * <Hypocenter> -> <Area> -> <nowiki><Code></nowiki>のtype属性の値 | ||
* 全ての<Observation> -> <IntensityStation> -> <Name>の値 | * 全ての<Observation> -> <IntensityStation> -> <Name>の値 | ||
<br> | |||
* LINQ to XML | |||
*: XDocumentクラスとDescendantsメソッド、Elementsメソッド、Attributesメソッドを使用して、XMLデータを効率的にクエリする。 | |||
* ストリーミング処理 | |||
*: ProcessLargeXmlFileAsyncメソッドでは、XmlReaderクラスを使用して大きなXMLファイルを効率的に処理する。 | |||
*: これにより、メモリ使用量を抑えつつ、大規模なXMLファイルを扱うことができる。 | |||
<br> | <br> | ||
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> |