4

Twitter API から返された次の日時文字列があります。

「2012 年 4 月 26 日木曜日 11:38:36 +0000」

DateTimeこれをオブジェクトに変換する必要があるためParseExact、カスタム書式指定子を使用して呼び出します。

CultureInfo provider = CultureInfo.InvariantCulture;
DateTime publishDate = DateTime.ParseExact(tweet["created_at"].ToString(), "ddd MMM dd hh:mm:ss zzz yyyy", provider);

ただし、これにより、 、またはタイムゾーンのFormatExceptionバリアントに対して例外が発生します。zzzzzz

文字列は有効な DateTime として認識されませんでした。

MSDN のドキュメントを見ると、その形式指定子はzz:zz、時間と分を区切るためにタイム ゾーンにコロンがある形式でタイム ゾーンを想定していることは明らかです。

Stack Overflow で次のような他の質問を確認しました。

そしてどれも本当に役に立ちません。

この形式を正しく解析するために使用できるタイム ゾーン指定子はありますか?

4

1 に答える 1

3

これは本当にばかげています。

問題は時間指定子でした。12 時間制の「hh」を使用しました。24 時間の場合は、"HH" を使用する必要がありました。

微妙な違いに注意してください。

すべてが期待どおりに機能することを変更します。

于 2013-06-21T12:02:01.943 に答える