簡體   English   中英

計算當前和未來時間之間的時差

[英]Calculate time difference between current and future time

我想計算當天時間(2012年10月1日上午11點)和同一天午夜時間(晚上11點59分59秒,2012年10月1日)的時間差(以毫秒為單位)。

我試過這個

    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.SECOND, 59);
    cal.add(Calendar.HOUR, 23);
    cal.add(Calendar.MINUTE, 59);
        cal.getTime().getTime() - today.getTime();

今天是今天的日期。

但是當我打印出長時間的cal值和今天的時間差時,如果是86400大約一天。

使用cal.set()而不是cal.add()

Calendar cal = Calendar.getInstance();
cal.set(Calendar.SECOND, 59);
cal.set(Calendar.HOUR, 23);
cal.set(Calendar.MINUTE, 59);

long diff = cal.getTime().getTime() - today.getTime();

您可以將日期設置為新創建的Calendar實例..然后使用getTimeInMillis()將其與當前實例進行比較

Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR, 23);
cal.set(Calendar.MINUTE, 59);
cal.set(Calendar.SECOND, 59);
cal.set(Calendar.DATE, 1);
cal.set(Calendar.MONTH, 9);
cal.set(Calendar.YEAR, 2012);

long difference = cal.getTimeInMillis() - Calendar.getInstance().getTimeInMillis();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM