作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个格式为“12-JAN-15 03.51.22.638000000 AM”的日期。我希望它转换为“12-01-15 00:00:00.000”即使有小时、分钟和秒等,我只希望输出为零。
最佳答案
您想将一种日期格式转换为另一种日期格式。 This answer正是这样做的。它指出
DateFormat originalFormat = new SimpleDateFormat("MMMM dd, yyyy", Locale.ENGLISH);
DateFormat targetFormat = new SimpleDateFormat("yyyyMMdd");
Date date = originalFormat.parse("August 21, 2012");
String formattedDate = targetFormat.format(date); // 20120821
在您的情况下,原始格式和目标格式如下
原始格式:dd-MMM-yy hh.mm.ss.N a
目标格式:dd-MM-yy hh:mm:ss:S
我不确定如何用 0 替换时间数据。在您的情况下,也许字符串操作是可行的方法。但是如果你想要更多的控制权,那么你可以做这样的事情。
Calendar cal = Calendar.getInstance();
cal.setTime(date); // this is the date we parsed above
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
cal.set(Calendar.MILLISECOND,0);
formattedDate = targetFormat.format(cal.getTime());
编辑@Sufiyan Ghori 提供了一种更简洁的方法。
关于java - 如何在java中转换 "12-JAN-15 03.51.22.638000000 AM"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28317415/
我是一名优秀的程序员,十分优秀!