.NET 4を使用していて、次の実行時に入力文字列が正しい形式ではないというエラーが発生します。
TimeSpan dropTime = TimeSpan.ParseExact( "01:33 PM"、 "hh:mm tt"、CultureInfo.InvariantCulture);
私は何が間違っているのですか?念のため、TTも試してみましたが、それで十分です。そうでなければ私のフォーマットは一致するようですか?
tt
MSDNTimeSpan
で見られるように、はの有効なフォーマット指定子ではありません。
解析しようとしているのはTimeSpanではなく時刻です-時刻間隔(を表すもの)ではなく時刻を指定し、で直接解析することはできません。PM
TimeSpan
TimeSpan
DateTime
これを最初に解析し、TimeSpan
そこから取得するために使用できます。
DateTime.ParseExact("01:33 PM", "hh:mm tt", CultureInfo.InvariantCulture).TimeOfDay
DateTime
代わりにクラスを使用する必要があります。
TimeSpan dropTime=DateTime.ParseExact("01:33 PM", "hh:mm tt", CultureInfo.InvariantCulture).TimeOfDay;
DateTimeオブジェクトを使用するだけです。サンプルコードを参照してください。
DateTime dropTime = new DateTime();
DateTime.TryParse("01:33 PM", out dropTime);
これにより、文字列が日時に解析されます。
よろしく、グレゴールプリマー