Java 日期问题

来源:百度知道 编辑:UC知道 时间:2024/06/17 21:02:45
import java.util.*;
class TestCalendar
{

public static void main(String[] args)
{

Calendar c=Calendar.getInstance();

System.out.print(c.get(Calendar.YEAR)+"年"+c.get(Calendar.MONTH)+"月"+c.get(Calendar
.DAY_OF_MONTH)+"日"+c.get(Calendar.HOUR_OF_DAY)+":"+c.get(Calendar.MINUTE)+":"
+c.get(Calendar.SECOND));

}
}
为什么我这个显示当前时间会比实际时间早一个月啊.
那么我应该怎么改过来显示正确的当前月分呢??

因为Calendar的月确实比实际月小1,所以你设置时间的时候也要小心了
比如今天是2008.4.14号,应该这样设置Calendar: new Calendar().set(2008,3,14);下面程序这样改
import java.util.*;
class TestCalendar
{

public static void main(String[] args)
{

Calendar c=Calendar.getInstance();
System.out.print(c.get(Calendar.YEAR)+"年"+(c.get(Calendar.MONTH))<-----+1这样就好了+1+"月"+c.get(Calendar .DAY_OF_MONTH)
+"日"+c.get(Calendar.HOUR_OF_DAY)+":"+c.get(Calendar.MINUTE)+":" +c.get(Calendar.SECOND));

}
}

哈哈。Calendar.MONTH的显示是从0开始的,需要+1.
其他的都不需要。
保存的时候记得反过来-1

Calendar.MONTH 从0开始

月+1不就行啦

月+1