2016年11月14日月曜日

java日付比較時millisecond注意

Date dt3 = dateFormat("20161001", "yyyyMMdd");

Calendar cal = Calendar.getInstance();

cal.setTime(new Date(1475247600132L));
int year  = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH);
int day   = 1;
cal.set(year, month, day, 0, 0, 0);
Date dt4 = cal.getTime();

System.out.println(dt3.getTime());    //出力:1475247600000

System.out.println(dt4.getTime());    //出力:1475247600132


Calendar calnoMillSecond = Calendar.getInstance();

calnoMillSecond.setTime(new Date(1475247600132L));
int year1  = cal.get(Calendar.YEAR);
int month1 = cal.get(Calendar.MONTH);
int day1   = 1;
calnoMillSecond.set(year1, month1, day1, 0, 0, 0);
calnoMillSecond.set(Calendar.MILLISECOND, 0);
Date dt5 = calnoMillSecond.getTime();

System.out.println(dt3.getTime());    //出力:1475247600000

System.out.println(dt5.getTime());    //出力:1475247600000


ミリ秒の0設定を注意。

0 件のコメント: