2017-02-19 20 views
0
TimeSpan ts = DateTime.Now.Subtract(DateTime.Parse(reader1["cur_time"].ToString())); 
int a = ts.Minutes; 
MessageBox.Show(a.ToString()); 
MessageBox.Show(ts.Milliseconds.ToString()); 

時間を差し引くと、正しい8分になります。ミリ秒単位でこれらの8分を変換しても正解ではありません。私が8分をミリ秒で変換すると480000ミリ秒になるはずですが、上記のコードは私に708の答えを与えます。予期せぬ結果がCで表示される#

+6

代わりに 'ts.TotalMilliseconds'を使用してください。ミリ秒で表現された時間ではなく、時間の小部分が得られます。 'ts.TotalMinutes'も使うべきです。 –

+0

ありがとうございます。 –

答えて

6

TimeSpanのミリ秒部分を読み上げていますが、スパンが表すミリ秒の合計ではありません。

ts.TotalMilliseconds.ToString(); 

変更

ts.Milliseconds.ToString(); 

それは何DateTime.Nowであると解析されcur_timeに応じて、いくつかの追加ミリ秒が含まれる場合があります。

+0

ありがとうございます –

関連する問題