Unparseable Date:“Sat 10月12日09:05:00 IST 2013”​​例外

我需要解析一个字符串到目前为止。 但得到一个不可解析的例外。 以下是我的代码:

String str="Sat Oct 12 09:05:00 IST 2013"; SimpleDateFormat format = new SimpleDateFormat("EEE MM DD hh:mm:ss yyyy"); try { format.parse(str); } catch (ParseException e) { e.printStackTrace(); } 

您的格式有几个问题:

 SimpleDateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.US); 
  • D表示一年中的一天,而不是一个月中的一天
  • 你错过了时区
  • 月份的格式不正确
  • 由于你的时间是24小时格式,你需要H而不是h

有关日期和时间模式的信息,请参阅SimpleDateFormat文档。

解析该字符串的格式错误。 您需要使用此格式。

 SimpleDateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy"); // Default Locale 
  • MMM – 在您的情况下是正确的月份格式
  • z – 你错过了时区模式
  • d – 表示月份中的日期,而不代表一年中的日期。
  • 正如所建议的那样 ,您可能希望使用H而不是h因为小时似乎是24小时格式。

查看文档以了解有关日期和时间模式的更多信息。