“EH,MMMM d,yyyy'在'HH:mm'

问题描述 投票:4回答:3

我想从字符串转换为日期。一个例子是:2013年9月4日星期三下午5:07

我首先将其转换为:2013年9月4日星期三下午5:07

并使用以下代码:

SimpleDateFormat format = new SimpleDateFormat("EEEE, MMMM d, yyyy 'at' hh:mm a");

但我总是得到Unparseable日期例外。

任何帮助表示赞赏!

java simpledateformat
3个回答
3
投票

以下适用于我:

String str = "Wednesday, September 4, 2013 at 5:07 PM";
SimpleDateFormat format = new SimpleDateFormat("EEEE, MMMM d, yyyy 'at' hh:mm a", Locale.US);

但如果我删除Locale,那么我得到一个ParseException。您的计算机Locale可能与英语区域对应。


0
投票

这似乎工作正常:

SimpleDateFormat in = new SimpleDateFormat("EEEE, MMMM d, yyyy 'at' hh:mma");
Date date = in.parse("Wednesday, September 4, 2013 at 5:07pm");
SimpleDateFormat out = new SimpleDateFormat("EEEE, MMMM d, yyyy 'at' hh:mm a");
String result = out.format(date);
System.out.println(result);

0
投票

为什么不使用'dd'而不是'd'

所以,而不是:

SimpleDateFormat format = new SimpleDateFormat("EEEE, MMMM d, yyyy 'at' hh:mm a");

使用:

SimpleDateFormat format = new SimpleDateFormat("EEEE, MMMM dd, yyyy 'at' hh:mm a");
© www.soinside.com 2019 - 2024. All rights reserved.