学J2ME的人应该都知道并不是JDK里类的方法都能在J2ME API中存在,有些时候我们却要自己手动实现一个类似于JDK 里的类方法,无非就是J2ME里没有此API方法.
Calendar 类是一个抽象类,它为特定瞬间与一组诸如
YEAR
、
MONTH
、
DAY_OF_MONTH
、
HOUR
等
日历字段
之间的转换提供了一些方法.正是利用这些方法实现以下功能:
TimeZone tz = TimeZone.getDefault();
/**取系统默认市区,这里有一个问题需要注意的是,WTK下的市区本真机上或者系统时间差8小时,这个是时区问题.真
*机上测试就不会有这个8小时差距的
Calendar ca = Calendar.getInstance(tz);
//Calendar 的
getInstance
方法返回一个
Calendar
对象,其日历字段已由当前日期和时间初始化
String strYear=String.valueOf(ca.get(Calendar.YEAR));//获取当前年时间并转为字符串型
String strMonth=String.valueOf(ca.get(Calendar.MONTH)+1);//获取当前月时间并转为字符串型
//ca.get(Calendar.MONTH)+1为什么加一是因为,0表示1月,1表示2月,依次类推
String strDate=String.valueOf(ca.get(Calendar.DATE));//获取当前日时间并转为字符串型
String SysDate=null;
if((ca.get(Calendar.MONTH)+1)<=9&&ca.get(Calendar.DATE)<=9)
{
SysDate=strYear+"0"+strMonth+"0"+strDate;
}else
if((ca.get(Calendar.MONTH)+1)>9&&ca.get(Calendar.DATE)>9)
{
SysDate=strYear+strMonth+strDate;
}else
if((ca.get(Calendar.MONTH)+1)<=9&&ca.get(Calendar.DATE)>9)
{
SysDate=strYear+"0"+strMonth+strDate;
}else
if((ca.get(Calendar.MONTH)+1)>9&&ca.get(Calendar.DATE)<=9)
{
SysDate=strYear+strMonth+"0"+strDate;
}
System.out.println(SysDate);
输出结果:20070904