このコードを使用して(例: 14:53)に変換Timespan
します。String
myTimeSpan.ToString("hh:mm");
しかし、このエラーが発生します:
入力文字列は、正しい形式ではありませんでした
これを行う適切な方法は何ですか?
myTimeSpan.ToString(@"hh\:mm")
カスタム TimeSpan 形式指定子には、日と時間、時間と分、または秒と小数秒を区切る記号などのプレースホルダー区切り記号は含まれません。代わりに、これらの記号を文字列リテラルとしてカスタム フォーマット文字列に含める必要があります。たとえば、「dd.hh\:mm」は、ピリオド (.) を日と時間の区切り記号として定義し、コロン (:) を時間と分の区切り記号として定義します。
@"hh\:mm\"
を使用する必要がありますTimeSpan
。タイムスパンのフォーマットは正確には同じではありませんDateTime
myTimeSpan.ToString(@"hh\:mm");
詳細については、 Msdnを確認してください。
からTimeSpan.ToString Method (String)
TimeSpan t = new TimeSpan(14, 53, 0);
Console.WriteLine(t.ToString(@"hh\:mm"));
String.Format
代わりにlike;を使用できます。
Console.WriteLine(String.Format("{0}:{1}", t.Hours, t.Minutes));
TimeSpan.ToString(String)
オーバーロードは .NET 4 以降でのみ使用できることを忘れないでください。
これを試してみると 100% うまくいきます !!
myTimeSpan.ToString(@"dd\.hh\:mm");.