中の技術日誌ブログ

C#とC++/CLIと
VBと.NETとWindowsで戯れる
 

目次

Blog 利用状況

ニュース

自己紹介

東京でソフトウェアエンジニアをやっています。
お仕事大募集中です。
記事執筆や、講師依頼とかでも何でもどうぞ(*^_^*)
似顔絵 MSMVPロゴ
MSMVP Visual C# Since 2004/04-2013/03

記事カテゴリ

書庫

日記カテゴリ

00-整理

01-MSMVP

Linq to XMLはかなり賢い

XMLの世界で日時を表すデータは以下のような書き方をする

<ROOT DATE="2008-02-27T19:28:24.447+09:00" />

かなりいけてる日付型で、いちおう文句はつけようがない。

ただプログラムの世界ではなかなか難しいデータ形で、読み込むのも出力するのも1工夫が必要。

でもLinq to XMLのサポートクラス群たちはいとも簡単に解決してくれます。

var a = new XElement("ROOT", new XAttribute("DATE", DateTime.Now));
var b = a.Attribute("DATE");
var c = (DateTime) a.Attribute("DATE");

サンプルコードはこんな感じ。

現在日時をROOT要素のDATE属性に設定して(1行目)、DATEをさらに取り出している(2行目)。DateTimeへのキャストを取り出す。

+        a    <ROOT DATE="2008-02-27T19:31:20.396+09:00" />    System.Xml.Linq.XElement
+        b    {DATE="2008-02-27T19:31:20.396+09:00"}    System.Xml.Linq.XAttribute
+        c    {2008/02/27 19:31:20}    System.DateTime

シームレスに、XAttributeの日時型と、DateTimeを変換してしまう。

投稿日時 : 2008年2月27日 19:34

コメントを追加

No comments posted yet.
タイトル
名前
URL
コメント