8

このような形式の文字列日付値を変換する方法:

Wed Oct 02 2013 00:00:00 GMT+0100 (GMT Daylight Time)

の形式の日付に02/10/2013

私はすでに試しましたDateTime.ParseExactが、まったく機能しませんでした:

DateTime.ParseExact(dateToConvert, "ddd MMM d yyyy HH:mm:ss GMTzzzzz",    CultureInfo.InvariantCulture);
4

2 に答える 2

8
var dateToConvert = "Wed Oct 02 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
var format =        "ddd MMM dd yyyy HH:mm:ss 'GMT'zzz '(GMT Daylight Time)'";

var date = DateTime.ParseExact(dateToConvert, format, CultureInfo.InvariantCulture);

Console.WriteLine(date); //prints 10/2/2013 2:00:00 AM for my locale

末尾を指定する必要があります'GMT'zzz '(GMT Daylight Time)'

の代わりにsingle dinを使用できますが、正常に動作しますformatdd

ここでデモを確認できます

于 2013-10-29T15:58:40.553 に答える
1

ありがとうございました。これはまさに、上記の最後のコメントの質問を解決するために行ったことです。

int gmtIndex = dateToConvert.IndexOf("G");

string newDate = dateToConvert.Substring(0, gmtIndex).Trim();

value = DateTime.ParseExact(newDate, "ddd MMM dd yyyy HH:mm:ss", CultureInfo.InvariantCulture);
于 2013-10-29T17:04:25.377 に答える