`
isiqi
  • 浏览: 16004116 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

j2me中如何使用Calendar获取系统时间并转换成字符串格式

JDK 
阅读更多

学J2ME的人应该都知道并不是JDK里类的方法都能在J2ME API中存在,有些时候我们却要自己手动实现一个类似于JDK 里的类方法,无非就是J2ME里没有此API方法.

Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEARMONTHDAY_OF_MONTHHOUR日历字段之间的转换提供了一些方法.正是利用这些方法实现以下功能:

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

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics