3

.NET 4を使用していて、次の実行時に入力文字列が正しい形式ではないというエラーが発生します。

TimeSpan dropTime = TimeSpan.ParseExact( "01:33 PM"、 "hh:mm tt"、CultureInfo.InvariantCulture);

私は何が間違っているのですか?念のため、TTも試してみましたが、それで十分です。そうでなければ私のフォーマットは一致するようですか?

4

3 に答える 3

7

ttMSDNTimeSpanで見られるように、はの有効なフォーマット指定子ではありません。

解析しようとしているのはTimeSpanではなく時刻です-時刻間隔(を表すもの)ではなく時刻を指定し、で直接解析することはできません。PMTimeSpanTimeSpan

DateTimeこれを最初に解析し、TimeSpanそこから取得するために使用できます。

DateTime.ParseExact("01:33 PM", "hh:mm tt", CultureInfo.InvariantCulture).TimeOfDay
于 2012-06-14T18:01:02.417 に答える
3

DateTime代わりにクラスを使用する必要があります。

TimeSpan dropTime=DateTime.ParseExact("01:33 PM", "hh:mm tt", CultureInfo.InvariantCulture).TimeOfDay;
于 2012-06-14T18:04:57.380 に答える
0

DateTimeオブジェクトを使用するだけです。サンプルコードを参照してください。

DateTime dropTime = new DateTime();
DateTime.TryParse("01:33 PM", out dropTime);

これにより、文字列が日時に解析されます。

よろしく、グレゴールプリマー

于 2012-06-14T18:10:28.977 に答える