java SimpleDateFormat处理英文3位字母月份时的注意事项
发布时间:2019-11-27 作者:鸿雪径 点击:1008
今天在处理nginx生成的access log时,发现时间是类似这种格式的:15/Oct/2019:10:20:42,以为只要简单的使用SimpleDateFormat处理即可,自己写了个处理格式dd/MMM/yyyy:HH:mm:ss ,可谁知直接执行竟然报错:
java.text.ParseException: Unparseable date: "15/Oct/2019:10:20:42" at java.text.DateFormat.parse(DateFormat.java:366) at cn.hxj.task.AccessLogDayReport.getLogMap(AccessLogDayReport.java:55) at cn.hxj.task.AccessLogDayReport.runOnce(AccessLogDayReport.java:39) at cn.hxj.task.AccessLogDayReport.main(AccessLogDayReport.java:70)
代码如下:
SimpleDateFormat sdf2 = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss"); Date date= sdf2.parse(time);
实际只要在构建SimpleDateFormat时加上, Locale.ENGLISH即可正常识别,即:
SimpleDateFormat sdf2 = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss", Locale.ENGLISH);
更多关于 SimpleDateFormat 的信息
暂无相关信息
本站部分文章转载于网上,版权归原作者所有。如果侵犯您的权益,请Email和本站联系!