datetime - Java中,怎么将当前时间的milliSeconds转换为hour级别的milliSeconds?
ringa_lee
ringa_lee 2017-04-18 09:57:30
[Java讨论组]

场景:
得到一个时间戳A:1473406568
对应的日期是B:2016/9/9 15:36:8
现在需要的是时间戳C:2016/9/9 15:00:00 对应的毫秒。

现在有大量的毫秒A数据,需要直接转为C中值,请问应该怎么处理?

ringa_lee
ringa_lee

ringa_lee

全部回复(5)
ringa_lee

那玩意叫时间戳

Date date = new Date(1473406568);
SimpleDateFormat formatter =  new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS");
System.out.println(formatter.format(date));

若只取毫秒,可以使用 Calendar

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(1473406568);
calendar.get(Calendar.MILLISECOND)
大家讲道理
long currentTimeMillis = System.currentTimeMillis();
Log.d("test", currentTimeMillis + "");
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH");
String format = dateFormat.format(currentTimeMillis);
try {
    Date date = dateFormat.parse(format);
    long time = date.getTime();
    Log.d("test", time + "");
} catch (ParseException e) {
    e.printStackTrace();
}
    
Log打印结果:
test: 1473410102814
test: 1473408000000
PHP中文网

本小时的毫秒 = 时间戳 % 3600000
小时时间戳 = 时间戳 - 本小时的毫秒
注意时区问题

迷茫
long ms = 1473406568 * 1000L;
Calendar c = Calendar.getInstance();
c.setTimeInMillis(ms);
c.clear(Calendar.MINUTE);
c.clear(Calendar.SECOND);

System.out.println(c.getTimeInMillis() / 1000); // unix timestamp
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(c.getTime()));
高洛峰
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(1473406568);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
System.out.println(calendar.getTimeInMillis());
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号