我得到日期时间格式 - "dd MMM yyyy"
,当试图解析“2012年8月6日”,我得到一个java.text.ParseException Unparseable日期。得到一个奇怪的例外可解析日期:“2012年8月6日”
每件事看起来都很好,你看到问题了吗?
我得到日期时间格式 - "dd MMM yyyy"
,当试图解析“2012年8月6日”,我得到一个java.text.ParseException Unparseable日期。得到一个奇怪的例外可解析日期:“2012年8月6日”
每件事看起来都很好,你看到问题了吗?
您需要提及语言环境,以及...
Date date = new SimpleDateFormat("dd MMMM yyyy", Locale.ENGLISH).parse("6 Aug 2012");
使用类似:
DateFormat sdf = new SimpleDateFormat("dd MMM yyyy", Locale.ENGLISH);
Date date = sdf.parse("6 Aug 2012");
这应该为你工作。您需要提供一个语言环境
Date date = new SimpleDateFormat("dd MMM yyyy", Locale.ENGLISH).parse("6 Aug 2012");
或者
Date date = new SimpleDateFormat("dd MMM yyyy", new Locale("EN")).parse("6 Aug 2012");
使用split()
功能与分隔符" "
String s = “6 Aug 2012”;
String[] arr = s.split(" ");
int day = Integer.parseInt(arr[0]);
String month = arr[1];
int year = Integer.parseInt(arr[2]);
请参阅编辑 – 2012-08-05 11:06:02
您是否建议使用String#split解析日期? – assylias 2012-08-05 12:02:18
你能展示你的代码吗?一种可能的原因是您没有使用兼容的区域设置(将Aug识别为一个月,例如需要Locale.ENGLISH)。 – assylias 2012-08-05 10:25:44
您的_current_ locale中的“Aug”是否已知? – 2012-08-05 10:37:33