android 获取时间

在项目开发中,很多时候会用到android的时间,罗列一下获取的时间的方式,和大家共同学习进步

一、获取系统时间

1.通过Calendar类来获取系统当前的时间

Calendar calendar = Calendar.getInstance();
long unixTime = calendar.getTimeInMillis();//这是时间戳

Logger.i(TAG,"calendar--->>>"+"当前时间为:" + calendar.get(Calendar.YEAR) +
        " " + calendar.get(Calendar.MONTH) +
        " " + calendar.get(Calendar.DAY_OF_MONTH) +
        " " + calendar.get(Calendar.HOUR_OF_DAY) +
        " " + calendar.get(Calendar.MINUTE) +
        " " + calendar.get(Calendar.SECOND) +
        "");
打印结果如下:

 calendar--->>>当前时间为:2016年 6月 13日 14时 38分 58秒

2.通过Time来获取,android的文档中说使用Time比Calendar对CPU的性能损耗更小,我却不推荐使用Time,因为Time使用必须在24小时制的系统中,如果用户手机就设成12小时制的,这时就有误差

Time times = new Time("GMT+8");
/*对于已经设定为GMT时间标准的dateFormat来说,一切需要他转换的字符串日期都是GMT标准时间,转换后返回的Date由于默认
 *遵守系统默认时区,所以转换给Date的日期需要+8(例如北京标准时区),也就是时区与标准不同导致的时差。*/

times.setToNow();
int year = times.year;
int month = times.month;
int day = times.monthDay;
int minute = times.minute;
int hour = times.hour;
int sec = times.second;
Logger.i(TAG,"当前时间为:" + year +
        " " + month +
        " " + day +
        " " + hour +
        " " + minute +
        " " + sec +
        "");
打印结果:当前时间为:2016年 6月 13日 6时 38分 58秒

注意:这时的时间和上面使用时间是同一时间,不过时间我都调成是12小时制的

当然,还有其他的获取方式,不过结果基本都一样

        import   java.text.SimpleDateFormat;      

        SimpleDateFormat   formatter   =   new   SimpleDateFormat   ("yyyy年MM月dd日   HH:mm:ss");   

        Date curDate =  new Date(System.currentTimeMillis()); 

          String   str   =   formatter.format(curDate);

还有

         DateFormat df = new SimpleDateFormat("HH:mm:ss"); 

          df.format(new Date());

<

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值