C# XMLファイル 方法
マークアップ言語とは、
マークをつけることでデータを表現する言語のこと。
xmlファイルはxmlで書かれているだけで、普通のテキストファイル。
テキストファイルなので、簡単なものなら、メモ帳でも、全く問題なく、作成することできます。
--------------------------------
例
<メンバー情報> --------------1行目
<名前>●●</名前> ---------2行目
<住所>●●</住所>
</メンバー情報>
--------------------------------
一行目はxmlファイルのお決まりの一文。
2行目からタグの中に書き、タグの中にタグを追加。することで、データにどんどん意味を付けることができる。
仕組みは、階層構造とか、ツリー構造と呼ばれます。
xmlファイルは、文字だけでデータの意味の意味も、階層も表現できる、ファイルである。
xmlのメリット:
・タグを自由に決められる
・いろいろなシステム、環境で使えること
・データの種類を増やしやすい
xmlファイルの読み書き方法
1.DOMを使った方法
DOM=「Document Object Model」の略。
XmlDocumentクラスを使い、読み書きする方法。
xmlファイルを一気に全て読み込んで記憶するので、何度もデータを検索したり、書き込んだりする場合に適しています。
しかし、全て読み込んで記憶するため、処理が他に比べて遅くなる。
2.SAXを使った方法
XmlReaderクラスを使って読み込む方法。
ファイルの内容を記憶しないで一度だけ読み込むので、他に比べて処理が速め。
しかし、先頭から読み込むため前の行には戻れないため、何度も検索して、データを使いたい際にはSAXは不便でしょう。
3.LINQを使った方法
LINQ(リンク)は、非常に簡単に言うと、SQLっぽい文章をC#コード上で使えるようにしてくれるもの。
LINQは他に比べて、とてもシンプルな書き方で読み書きすることができ、処理も早く、DOM,SAXのいいところを取っている方法。
読み込み方---LINQで読み込む手順
//xmlファイルを指定する
XElement xml = XElement.Load(@"Fileのある場所")=(C;\sr..)
//メンバー情報のタグ内の情報を取得する
IEnumerrable<String> infis =from item in xml.Elements("メンバー情報").Elements("名前") select item.Value;
//メンバー情報分ループして、コンソールに表示
foreach(String info in infos)
{
Console.WriteLine(info);
}