Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 对于MMM d yyyy h:mm a模式,SimpleDataFormat返回null_Java_Simpledateformat_Datetime Format - Fatal编程技术网

Java 对于MMM d yyyy h:mm a模式,SimpleDataFormat返回null

Java 对于MMM d yyyy h:mm a模式,SimpleDataFormat返回null,java,simpledateformat,datetime-format,Java,Simpledateformat,Datetime Format,我无法成功解析日期。下面是代码片段 输入字符串:2013年5月9日上午8:29 SimpleDateFormat dateFormater = new SimpleDateFormat("MMM d yyyy h:mm a", Locale.US);' dateFormater.parse(dateString)"; 我也没有得到任何例外。你能帮我解决这个问题吗 解析器总是返回null。我阅读了文档,它说如果有任何异常,解析最终会给出null 我会尝试不同的选择,并发布一个答案 S

我无法成功解析日期。下面是代码片段

输入字符串:2013年5月9日上午8:29

SimpleDateFormat dateFormater = new SimpleDateFormat("MMM d yyyy h:mm a", Locale.US);'

dateFormater.parse(dateString)"; 
我也没有得到任何例外。你能帮我解决这个问题吗

解析器总是返回null。我阅读了文档,它说如果有任何异常,解析最终会给出null

我会尝试不同的选择,并发布一个答案

    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);

对我来说很好…

我刚刚发现正在访问的web服务返回了一个额外的空间,就像这样-->

“2013年5月9日上午8:29”

因此,解析方法无法成功解析字符串

我使用String的trim方法删除日期字符串前后的空格

现在我可以将日期字符串解析为日期

非常感谢你的支持。我不知道空白也会引起问题

现在一切看起来都好了。我的实现方式是正确的,但除此之外,我需要确保字符串前后没有空格, 因为我将模式定义为--> 没有空格的“MMM d yyy h:mm a”

另一种修复方法是-->而不是使用修剪来避免空白。。。 我可以把图案做成-->
“MMM d yyy h:mm a”(注意开始时有一个空白)

这里还有其他事情。请粘贴完整的相关代码。您的代码片段与您提到的输入字符串非常吻合。您希望得到什么样的输出模式?它不会返回null,只是您没有打印它。