多语言展示
当前在线:821今日阅读:61今日分享:18

Java如何将long类型的值转换成日期Date

有时我们需要将表示成long类型的日期或时间值(比如00)转换成日期类型Date(2014/6/28 12:56:07),如果以前不曾留心的话,一时半刻也许还不知道该咋办? 本文提供了2中方式来完成者个任务。
工具/原料
1

jdk Calendar

2

joda

方法/步骤
1

首先确保你的long型日期/时间值是正确的,比如检测长度,是否少了最后的毫秒数,这个跟System.currentTimeMillis()返回的值对比一下就知道了,比如14,就少了最后的毫秒数,你可以手动补充完整,末尾加3个0,00

2

方法1:使用Calendar的setTimeInMillis的方法,注意c.add(Calendar.MILLISECOND,int value)并不能完成任务.示范代码如下:Calendar c = Calendar.getInstance();c.setTimeInMillis(00L);System.out.println(c.getTime());输出: Sat Jun 28 12:56:07 CST 2014

3

方法2:使用 JDK 里面的日期类来处理时间相关的任务将非常痛苦和繁琐。为此我们可以使用第三方的包,现在来看看 Joda Time,这是一个面向 Java™ 平台的易于使用的开源时间/日期库。Joda-Time 轻松化解了处理日期和时间的痛苦和繁琐。以下示范使用joda的DateTime,代码看起来简洁明了多了。示范代码如下:DateTime dateTime = new DateTime(dateMillionSeconds); System.out.println(c.getDate());

注意事项

确保long类型的值是有效的日期/时间值

推荐信息