1. ホーム
  2. c#

[解決済み] 2つの時刻の間に何分あるか計算する

2023-03-03 02:56:25

質問

私のアプリケーションに、開始と終了の時間を保持するdatagridviewがあります。 私はこれらの2つの時間の間の分数を計算したい。 これまでのところ、私は得た。

var varFinish = tsTable.Rows[intCellRow]["Finish Time"];
TimeSpan varTime = (DateTime)varFinish - (DateTime)varValue;
int intMinutes = TimeSpan.FromMinutes(varTime);

しかし、最後の行はTimespanコンストラクタに無効な引数を使用していると言われ、コンパイルされません。 2つの時刻の間の分数を計算する方法についてかなり研究しましたが、少し煉瓦の壁にぶつかっています。 私の目的を達成するための最良の方法について、どなたか私に助言していただけませんか。

EDIT/

これで、私のコードは以下のようになりました。

var varFinish = tsTable.Rows[intCellRow]["Finish Time"];
TimeSpan varTime = (DateTime)varFinish - (DateTime)varValue;
int intMinutes = (int)varTime.TotalMinutes;

しかし、2行目で無効なキャストが発生します。 varFinishとvarValueは両方とも時間です。 なぜDateTime型にキャストされないのか、よくわかりません。

どのように解決するのですか?

これを試してみてください。

DateTime startTime = varValue
DateTime endTime = varTime

TimeSpan span = endTime.Subtract ( startTime );
Console.WriteLine( "Time Difference (minutes): " + span.TotalMinutes );

編集してください。 span.Minutes'を試している場合、これはタイムスパン[0~59]の分のみを返し、このインターバルのすべての分の合計を返すには、単に'span.TotalMinutes'を使用します。