如何把“time=1330443881769”转化为"yyyy-MM-dd HH:mm:ss"

1.弄清楚time=1330443881769代表什么?
Calendar calendar = Calendar.getInstance();
System.out.println(calendar);
执行以上代码,会得到
java.util.GregorianCalendar[time=1330443881769,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2012,MONTH=1,WEEK_OF_YEAR=9,WEEK_OF_MONTH=5,DAY_OF_MONTH=28,DAY_OF_YEAR=59,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=11,HOUR_OF_DAY=23,MINUTE=44,SECOND=41,MILLISECOND=769,ZONE_OFFSET=28800000,DST_OFFSET=0]

发现time其实是类Calendar的一个字段,帮助文档解释如下

time
protected long time日历的当前设置时间,以毫秒为单位,表示自格林威治标准时间 1970 年 1月 1 日0:00:00 后经过的时间。
2.解决问题的代码如下:
long time = 1330443881769L;
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(time);
Date date = calendar.getTime();
           
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//日期格式
String now = df.format(date);
System.out.println(now);
执行得到的结果为:2012-02-28 23:44:41

如果想在Java的世界里,灵活地操作日期,还需好好研究研究Date、Calendar等类。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值