javaBean 里面获取系统时间出错
- Java code
public String gettime() { Calendar cal=Calendar.getInstance(); int year=cal.get(Calendar.YEAR); int month=cal.get(Calendar.MONTH); int date=cal.get(Calendar.DAY_OF_MONTH); int hour=cal.get(Calendar.HOUR_OF_DAY); int minute=cal.get(Calendar.MINUTE); String year1=String.valueOf(year); String month1=String.valueOf(month); String date1=String.valueOf(date); String hour1=String.valueOf(hour); String minute1=String.valueOf(minute); return (year1+"-"+month1+"-"+date1+" "+hour1+":"+minute1); }
这个获取的时间少一个月,且时间也少了8个钟
- Java code
public String gettime() { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");//设置日期格式 return df.format(new Date());// new Date()为获取当前系统时间 }
这个月份正确,时间也是少了8个钟
为什么会这样的?
------解决方案--------------------------------------------------------
因为 Calendar 类的月份是从0开始的,所以会少一个月,至于分钟为什么会少,也许是时区的问题吧,不知道LZ用的什么操作系统,为什么我从来就没碰到够分钟不对的情况呢
------解决方案--------------------------------------------------------
查API吧 java.util 类 Calendar MONTH 第一个月是 JANUARY,它为 0 所以比真正月份少1