7

クライアントがアプリを使用してサーバーからファイルをダウンロードした後、アプリはParseExactサーバーから次の形式で送信される日付文字列を実行しますyyyy/mm/dd HH:mm:ss

多くの混乱の後、いくつかのログで、クライアントシステムの日付がであることに気づきました19/7/2554。実は、これはタイと同様に有効な時間です。Windowsは、デフォルトで仏教時代の時間システムになり、2554年になります。

私の正確な解析は不変のカルチャで行われ、これが問題である可能性がありますが、カルチャはあなたが解析しようとしている形式を参照していると思いましたか?

DateTime表示される例外メッセージは次のとおりです。曜日が正しくないため、文字列が有効として認識されませんでした

4

1 に答える 1

1

CultureInfo には、カレンダー情報も含まれています。TryParseExact メソッドが正しいカレンダー情報にアクセスできる場合、日付を正しく解析できます。

http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.calendar.aspx

InvariantCulture CultureInfo を Thai CultureInfo に置き換えると、そのカルチャの既定のカレンダーが使用されます。

または、CultureInfo を必要としない TryParse メソッドのオーバーロードを使用できます。この場合に使用されるカルチャは、Windows でのユーザーの地域設定に依存します。

于 2011-07-29T08:45:57.913 に答える