指定した書式で文字列をDateTimeに変換
■使用例
var date = DateTimeParser.ParseNullable("20120720", "yyyyMMdd");
■出力結果
2012/07/20 0:00:00
■コード
public class DateTimeParser { /// <summary> /// 指定した書式に従いDateTimeに変換。変換できない場合は例外が発生。 /// </summary> /// <param name="s">対象文字列</param> /// <param name="format">書式文字列</param> /// <returns>変換結果</returns> public static DateTime Parse(string s, string format) { return DateTime.ParseExact( s, format, System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None); } /// <summary> /// 指定した書式に従いDateTimeに変換。変換の成否を戻り値で返す。 /// </summary> /// <param name="s">対象文字列</param> /// <param name="format">書式文字列</param> /// <param name="result">変換結果</param> /// <returns>変換の成否</returns> public static bool TryParse(string s, string format, out DateTime result) { return DateTime.TryParseExact( s, format, System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None, out result); } /// <summary> /// 指定した書式に従いDateTimeに変換。変換できない場合はnullを返す。 /// </summary> /// <param name="s">対象文字列</param> /// <param name="format">書式文字列</param> /// <returns>変換結果</returns> public static DateTime? ParseNullable(string s, string format) { DateTime result; if (TryParse(s, format, out result)) { return result; } return null; } }