Android时间戳转字符串的1970问题

作者: FynnJason | 来源:发表于2018-08-20 12:34 被阅读14次

    前言

    今天遇到一个怪事,后台返回了时间戳,然后我用时间戳转字符串后,一直是1970年,百思不得其解,难道是我代码写错了?我网上搜了下,对的呀,这么简单的转换代码,应该没有问题才对。

    问题

    一般时间戳转字符串代码如下:

    后台返回的是1534498090

    Date date = new Date(1534498090);
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    return sdf.format(date);
    

    return 得到的答案是 1970-01-19 02:14:58

    那这是为什么呢?

    解决

    经过自己在代码中获取到时间戳格式,我发现是long类型的,长度也比后台返回得到要长,例如后台返回的是1534498090,android中需要的是1534498090000,既然问题找到了,那么只需要改改代码即可。

    Date date = new Date(1534498090*1000L);
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    return sdf.format(date);
    

    return 得到的答案是 2018-08-17 17:28:10

    好了,问题解决了!!!

    相关文章

      网友评论

        本文标题:Android时间戳转字符串的1970问题

        本文链接:https://www.haomeiwen.com/subject/mmokiftx.html