Convert yyyy-MM-dd HH:mm:ss.SSS zzz format Strin to date object
我在
中有一个
我想将其作为日期对象并将其转换为
我确实像这样……
**
1 2 3 4 5 6 7 8 9 | String GMT ="2013-07-29 06:35:40:622 GMT"; DateFormat utcDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS zzz"); utcDateFormat.setTimeZone(TimeZone.getTimeZone("GMT")); try { utcDateFormat.parse(GMT); } catch (ParseException e) { e.printStackTrace(); }** |
bt gettng错误为java.text.ParseException:无法解析的日期:" 2013-07-29 06:35:40:622 GMT"
主要(问题)是
另一个问题是您的格式与您的文本不匹配...
您的
1 | 2013-07-29 06:35:40:622 GMT |
您的格式为
1 2 | yyyy-MM-dd HH:mm:ss.SSS zzz ^--------This is a naughty character... |
秒和毫秒由不同的字符分隔,这无济于事
现在,如果我们将期望的格式修改为实际格式,则无法解决时区问题...但是,对我们而言,
因此,您可以尝试所有类似的操作...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | String text ="2013-07-29 06:35:40:622 GMT"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS"); TimeZone gmt = TimeZone.getTimeZone("GMT"); sdf.setTimeZone(gmt); sdf.setLenient(false); try { Date date = sdf.parse(text); System.out.println(date); System.out.println(sdf.format(date)); } catch (Exception e) { e.printStackTrace(); } |
哪个输出...
1 2 | Mon Jul 29 16:35:40 EST 2013 2013-07-29 06:35:40:622 |
Joda Time支持时区转换。 http://www.joda.org/joda-time/userguide.html#Changing_TimeZone
尝试一下。
1 2 3 |