我试图使用的SimpleDateFormat类来分析一个DateTime出这个字符串:
05-JUL-2012 11:38:02442 UTC AM
我试过如下格式的字符串:
SimpleDateFormat dateformatYYYYMMDD = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss,SSS z a");
Date temp = dateformatYYYYMMDD.parse(time);
但它产生的错误:
错误:无法解析的日期:“”
如果我使用ZZ我得到:错误:无法解析的日期: “05-JUL-2012 11:38:02442 UTC AM”
如何解决这个问题的任何提示?
当我尝试运行正常工作对我来说:
String time = "05-Jul-2012 11:38:02,442 UTC AM";
SimpleDateFormat dateformatYYYYMMDD = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss,SSS z a");
Date temp = dateformatYYYYMMDD.parse(time);
你确定time
设置的东西?
你给的代码为我工作得很好。 也许,问题是你的语言环境? 尝试指定它,当你创建SimpleDateFormat
:
SimpleDateFormat format =new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss,SSS z a",
Locale.US);
这样,它会努力寻找美国一个月,AM / PM指示的名称。
尝试这个...
System.out.println(new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss,SSS z a",
Locale.US).format(new Date()));
我无法重现你的错误。 你确定你使用的是:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;