私はその内容に関する情報を格納するオブジェクトを持っています。日付を任意の区切り文字で区切ります
var columnType = new ColumnType
{
ColumnName = "DateTime D/M/Y",
ColType = typeof (DateTime),
Format = "ddMMyyyy HH:mm"
}
これに基づいて、この列に追加する前に行を解析する必要があります。問題は、私の書式に区切り文字が含まれていないことです。私はどのような区切りに関係なく日付を解析したい。
標準DateTime.Parse
にはフォーマットのコンストラクタがありません。DateTime.ParseExact
には、指定されたフォーマットにすでにセパレータが含まれていることが必要です。
私はそのような日付解析します何か必要があります。そして、私のフォーマットはddMMyyyy HH:mm
ある場合 を:
05.03.2016 04:19
- >解析された(時間必要があります - >
05/03/2016
を解析された - >
05-03-2016 04:19
を解析されましたオプション)
2016/03/05 04:19
- >エラー
私はこれを実行しようとしましたが、format
におけるセパレータなしでは動作しませんでした。このような
var format = "ddMMyyyy HH:mm";
DateTime.TryParseExact("05.03.2016 04:19", format, CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime resultValue);
「とDateTime.ParseExactは、指定された形式は、すでにそれにセパレータを持っていることを期待する」 - それは真実ではありません。曖昧でないときは、セパレータなしで解析するのは良いことです。例: 'var date = DateTime.ParseExact(" 19061976 08:10 "、" ddMMyyyy HH:mm "、CultureInfo.InvariantCulture);' –
フォーマットに区切り文字が含まれていない場合、なぜあなたは値を解析しようとしていますか? *セパレータはありますか? "05.03.2016 04:19"は "ddMMyyyy HH:mm"の形式と一致しません。達成しようとしていることがわかりません... –
基本的にセパレータを無視している場合でも、 "05/03/2016"をどのように解析するかは不明です。セパレータを削除した後それでも "ddMMyyyy HH:mm"と一致しない "05032016"。 –