2016-09-18 9 views
0

"20160918000500 +0200"DateTimeの文字列を、オフセット値"+0200"に変換しようとしています。日付とUTCのオフセットをDateTimeに変換する

私は以下を試みましたが、無効なDateTimeを与えます。

DateTime dtDateTime = DateTime.Parse("20160918000500 +0200",new CultureInfo("yyyyMMddHHmmss zzz")); 

UTC offset valueString正確Datetimeに変換する方法はありますか?

+1

チェック - http://stackoverflow.com/questions/179940を/ convert-utc-gmt-time-to-local-time –

答えて

0

私はDateTimeOffset.ParseExactメソッドを使用、あなたのオフセットを維持するためにDateTimeクラス

+1

文字列にUTFのオフセット部分が含まれているので、 'DateTime'ではなく' DateTimeOffset'を解析する方が良いでしょう。 –

1

ParseExactのいずれかの方法を試してみることをお勧めします:

string str = "20160918000500 +0200"; 
var result = DateTimeOffset.ParseExact(str, "yyyyMMddHHmmss zzz", CultureInfo.InvariantCulture); 
Console.WriteLine(result); 
関連する問題