Java SimpleDateFormat parse 遭遇unparsable date异常
2016-01-24 10:11
651 查看
在我的win7x32机器,Java 6, 运行以下代码总是报错unparsble date异常
我仔细检查了日期格式定义”hh:mm:ssa”,发现没有问题。
于是搜索,发现了别人遇到的此类问题的各种原因:
比如有人的输入是从request.getParameter获得的, 用parseObject就可以了
有人是字符串有莫名其妙的隐形字符,需要用replaceAll(奇怪的正则表达式)去掉这些看不见的字符。
而这些都似乎不是我的问题,最后,受到某个帖子的启发,觉得有可能是Locale的问题。果然,因为我是中文操作系统,当我输入改为
就OK了
但是我的输入必须是“PM”,因此格式定义加上Locale.US就行了。
String time = "10:30:35PM"; SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ssa"); try { Date date = sdf.parse(time); } catch (Exception e) { System.out.println(e.toString()); }
我仔细检查了日期格式定义”hh:mm:ssa”,发现没有问题。
于是搜索,发现了别人遇到的此类问题的各种原因:
比如有人的输入是从request.getParameter获得的, 用parseObject就可以了
有人是字符串有莫名其妙的隐形字符,需要用replaceAll(奇怪的正则表达式)去掉这些看不见的字符。
而这些都似乎不是我的问题,最后,受到某个帖子的启发,觉得有可能是Locale的问题。果然,因为我是中文操作系统,当我输入改为
String time = "10:30:35下午";
就OK了
但是我的输入必须是“PM”,因此格式定义加上Locale.US就行了。
SimpleDateFormat("hh:mm:ssa",Locale.US);
相关文章推荐
- Eclipse快捷键大全
- 2016蓝桥杯假期任务之《猜字母》
- java运行脚本语言demo
- 区分java中String+String和String+char
- java@ 利用ArrayList实现dijkstra算法以及topological 排序算法(java.util.ArrayList)
- JavaSE016_数组之应用举例(输出考试成绩的前三名)
- 2016.1.23___Java and UML surgeory
- Generate java file from XSD, missing @XMLRootElement annotation.
- java解析xml文件(三种方式-(dom ,jdom ,dom4j)
- java模拟并发请求
- Java连接各种数据库
- java中IO流的学习笔记(3、转换流的写入和读取)
- Java 异常处理的捕获形式
- (spring-第15回【IoC基础篇】)容器事件
- 简析JDBC
- 两次windows系统环境下jdk下载安装与环境配置经验
- 通过struts2-spring-plugin集成Struts2和Spring,报错:ClassNotFound:*Interceptor.......
- java volatile关键字
- ArcGIS 地图切图系列之(二)JAVA实现
- JAVA中的主方法的含义