java.uti.Date一個問題
我想得到當前時間的當天日期範圍
比如現在是 2007-3-1 13:24:59
要得到 2007-3-1 00:00:00 和 2007-3-2 00:00:00
long now=System.currentTimeMillis();
Date curDate=new Date(now);
Date todayBegin=new Date(now-(now%(24*60*60*1000)));
Date todayEnd=new Date(now-(now%(24*60*60*1000))+24*60*60*1000);
爲什麽得到的結果不准缺呢?誰告訴我原因
------解决方案--------------------不准确?运行了下没问题啊
------解决方案--------------------想得到什么结果呢?好像没什么问题
------解决方案--------------------Date date = new Date();
DateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd ");
Date todayBegin = formatter.parse(formatter.format(date));
Date todayEnd = new Date(todayBegin.getTime()+24*60*60*1000);
------解决方案--------------------小学地理学过,我们是东8区。currentTimeMillis取得的值基准是格林威治时间。
------解决方案--------------------时区的原因
------解决方案--------------------Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
Date begin = cal.getTime();
cal.add(Calendar.DAY_OF_YEAR, 1);
Date end = cal.getTime();