Java 使用此自定义格式分析DateTime

Java 使用此自定义格式分析DateTime,java,datetime,Java,Datetime,我正试图解析这样一个日期: 2004年4月4日至太平洋标准时间下午1点 我尝试过不同的模式,目前我有一个: SimpleDateFormat formatoFechaHora = new SimpleDateFormat("EEE dd/MM - ha z"); Date daa=formatoFechaHora.parse("THU 04/04 - 1PM PST"); 这会引发一个异常: java.text.ParseException:无法解析的日期:“2007年2月2日星期四-太平洋标

我正试图解析这样一个日期:

2004年4月4日至太平洋标准时间下午1点

我尝试过不同的模式,目前我有一个:

SimpleDateFormat formatoFechaHora = new SimpleDateFormat("EEE dd/MM - ha z");
Date daa=formatoFechaHora.parse("THU 04/04 - 1PM PST");
这会引发一个异常:

java.text.ParseException:无法解析的日期:“2007年2月2日星期四-太平洋标准时间下午1点”(在 偏移量(0)

什么是正确的模式来解析此内容?

如果您不熟悉
DateFormat
模式,请务必咨询。你需要

new SimpleDateFormat("EEE dd/MM - ha z", Locale.ENGLISH)

此外,默认的
区域设置可能与日期或时区字段不匹配。

您的应该是
EEE dd/MM-ha z

请注意,
EEE
代表
THU
yyyy
代表,如2013年

编辑: 您可能需要将区域设置明确设置为英语

SimpleDateFormat formatoFechaHora = new SimpleDateFormat("EEE dd/MM - ha z", Locale.ENGLISH);

异常消息与显示的代码不匹配。您说您解析了“太平洋标准时间4月4日-下午1点”,而异常情况是您解析了“太平洋标准时间2013年2月7日-下午1点”。更改您的问题:我们甚至不知道您真正想要解析什么,以及您尝试使用的模式。抱歉,我编辑了我的问题。thanx,我在问题上犯了一个错误。现在编辑它。我试过你的模式,但仍然不起作用…你是对的,谢谢。我接受了普雷姆格纳罗的回答,因为他首先回答:“投你一票;”Thanx,但我编辑了我的问题,因为我犯了一个错误。这种模式仍然不起作用@Perroloco检查我的编辑,您需要将您的区域设置为英语