我无法成功解析日期。这是代码段。
输入字符串:2013年5月9日上午8:29
SimpleDateFormat dateFormater = new SimpleDateFormat("MMM d yyyy h:mm a", Locale.US);'
dateFormater.parse(dateString)";
我也没有任何例外。你能帮我解决这个问题吗?
解析器始终返回null。我阅读文档,它说如果有任何异常,解析最终会给出null。
我会尝试不同的选项并为此发布答案。
答案 0 :(得分:1)
String dateString = "May 9 2013 8:29 AM";
SimpleDateFormat dateFormater = new SimpleDateFormat("MMM d yyyy h:mm a", Locale.US);
Date date = dateFormater.parse(dateString);
System.out.print(date);
对我来说工作得很好......
答案 1 :(得分:0)
我刚才发现正在访问的网络服务正在返回这样一个额外的空间 - >
“2013年5月9日上午8:29”。
因此,parse方法无法成功解析字符串。
我使用String的trim方法删除日期字符串之前和之后的空格。
现在能够将日期字符串解析为日期。
非常感谢您的支持。我没有意识到白色空间也会引起问题。
现在一切都很好看。我实现的方式只是正确的,但除此之外,我需要确保字符串之前和之后没有空格, 因为我将模式定义为 - > “MMM d yyyy h:mm a”没有空白区域。
另一种解决方法是 - >而不是使用修剪来避免白色空间...... 我可以将模式设为 - > “MMM d yyyy h:mm a”(注意开始时有一个空白区域)