-1

以下の日付と時刻の形式を SQL の日付と時刻に変換したい Thu Apr 07 2016 06:30:00 GMT+0530 (インド標準時)

4

2 に答える 2

1

文字列にはUTC オフセット値があるため、オフセット部分を保持できるため、DateTimeOffset代わりに解析します。DateTime

ただし、タイム ゾーン情報DateTimeも保持もしないため、文字列リテラルの区切り記号としてandパーツを使用する必要があります。DateTimeOffsetGMT(India Standard Time)

var s = "Thu Apr 07 2016 06:30:00 GMT+0530 (India Standard Time)";
var dto = DateTimeOffset.ParseExact(s, "ddd MMM dd yyyy HH:mm:ss 'GMT'zzz '(India Standard Time)'", 
                                    CultureInfo.InvariantCulture);

これでDateTimeOffsetasができました{07.04.2016 06:30:00 +05:30}

ここに画像の説明を入力

そして、オフセット部分も保存されるため、これをSQL Serverに型指定された列dtoとして挿入します(もちろん、パラメーター化されたクエリを使用)。datetimeoffset

+---------------------------+
|   Time zone offset range  |
+---------------------------+
|   -14:00 through +14:00   |
+---------------------------+
于 2016-04-07T13:47:58.090 に答える
-1

入力が文字列の場合、特定のカルチャの日付の解析を開始する必要があります。

DateTime dt =  DateTime.ParseExact(inputString, System.Globalization.CultureInfo("<your_culture>"));

<your_culture>、あなたの国の複数のカルチャ名の 1 つです ( http://www.csharp-examples.net/culture-names/を参照) 。

次に、単純な引用符を含む SQL 互換の文字列として日付を取得できます。

string sqlDate = dt.ToString("'yyyy-MM-dd HH:mm:ss'");
于 2016-04-07T13:36:51.083 に答える