0

与えられた2つのタイムスロットの時間差を計算しようとしていますが、答えが正しくないようです。何が間違っているのでしょうか。

私のコード: ここに画像の説明を入力してください

なんらかの理由で、指定された値amFinishが16:30から16:18:00に変更されました。理由はわかりません。

また、テキストボックスがあり、ユーザーが16.30と入力した場合、その値を16時間30分として計算するにはどうすればよいですか。

答えは05.30であるはずですが、代わりに05.18を取得します。何か疑惑はありますか?

4

2 に答える 2

9

1時間の30%は18分です。

16.30時間は16時間で、1時間の30/100部分です。

16時間半は16.50になります。

于 2013-03-11T22:40:36.383 に答える
1

Odedが説明しているように、小数16.3時間は16時間18分です。

時間、分、秒の両方を指定する必要がある場合は、次のTimeSpan3つの引数を取るコンストラクターのオーバーロードを使用します。

TimeSpan amStart = new TimeSpan(0, 11, 0);
TimeSpan amFinish = new TimeSpan(16, 30, 0);

stringまた、をに変換する必要がある場合はTimeSpan、次のようなものを使用してください。

TimeSpan amFinish = TimeSpan.ParseExact("16.30", @"hh\.mm", CultureInfo.InvariantCulture);
于 2013-03-11T22:51:05.287 に答える