プロが教えるわが家の防犯対策術!

時間間隔の計算方法

VB.NET2005で開発をしてます。

アプリ起動後、指定時間から分間隔で処理をしようと思います。
例)20分間隔
10時10分に起動すれば
10時20分に処理
10時40分に処理
11時00分に処理



としたいのですが
10時10分に起動すれば
10時30分に処理
10時50分に処理


と起動した時間からしか時間間隔がとれません。
コード
'現在時刻
Dim nowtime As DateTime = System.DateTime.Now
'処理間隔時
exetime = 20
Label1.Text=nowtime.AddMinutes(exetime).ToShortTimeString '次回時間表示

System.DateTime.Now で現在時刻を取得してそれに20分をたしてます。


時間の指定方法を教えてください。
よろしくお願いします。

A 回答 (2件)

'現在時刻


Dim nowtime As DateTime = System.DateTime.Now
'処理間隔時
exetime = 20
' 所得時間を20分ごとで正規化
Dim m as Integer = ( 20 * ( nowtime \ 20 + 1 ) mod 60 )
' m=0の場合 1時間進める
dim h as Integer = nowtime.hour + iif( m = 0, 1, 0 )
' 新しい時間を設定
nowtime = new DateTime( nowtime.year, nowtime.month, nowtime.day, h, m, 0 )
'Label1.Text=nowtime.AddMinutes(exetime).ToShortTimeString '次回時間表示
Label1.Text=nowtime..ToShortTimeString
    • good
    • 0

http://ideone.com/E5WuX

#JSTよりUTC(世界標準時)の方が好き
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!