DateTime の ToString で曜日、月を英語表示させる

.NET では、カレントのカルチャで文字列がフォーマットされるため。以下のようにコーディングした場合は、カレントのカルチャである日本語で文字列が出力される。 string formatString = "ddd, dd MMM yyyy HH':'mm':'ss 'GMT'"; DateTime n = DateTime.Now; System.Console.WriteLine(n.ToString(formatString)); 上記のコードでの出力文字列は以下のようになる。 水, 31 3 2010 03:40:00 GMT これを英語表記に変更する場合は、ToString メソッドのオーバーロードメソッドの第二引数に、フォーマットの元となるカルチャ ("en-US") を指定す... 続きを読む

XPath の文字列比較で、小文字と大文字を区別しない方法

.NET の XML DOM を使って、XPath の文字列比較によって、大文字、小文字を区別することなく、ノードをセレクトする方法を紹介する。 一般的な言語系であれば、文字列比較関数で、大文字、小文字を区別することなく、文字列を一致させるオプションが用意されていることは普通だ。しかし、XPath では、そのような関数のオプションは用意されていないようだ。 translate() 関数を応用することによって実現する。 まず、translate() 関数によって、検索対象ノード値文字列を小文字に変換する。 これは、string クラスの ToLowerString() メソッドに相当する。 translate(@targetAttribute, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') あとは、通常の文字列比較によって、式を記述する。 以下は、object ノードより、deleted 属性が、false のノードのみを取得するサンプルコード。deleted 属性文字列は、大文字、小文字... 続きを読む

XmlSerializer によりシリアライズしたオブジェクトを XmlDocument オブジェクトに変換する方法

XmlDocument System.Xml.XmlDocument XmlSerializer System.Xml.Serialization XmlSerializer によりシリアライズしたオブジェクトを XmlDocument オブジェクトに変換する方法 ========================================================= using System.Xml.Serialization; [XmlRoot("branch")] public class Branch { [XmlElement("name")] public string name = null; [XmlElement("title")] public string Title = null; [XmlElement("description")] public string Description = null; [Xm... 続きを読む