我是GWT的新手。
我一直试图解析格式为“ dd-MMM-yyyy HH:mm z
”的日期,但是当时区为EDT或BST时出现异常。
GWT在解析时不支持这些时区吗?如果是这样,是否可以使用EDT解析日期呢?
请帮忙。
程式码片段:
DateTimeFormat dateParser = DateTimeFormat.getFormat("dd-MMM-yyyy HH:mm z");
String fomattedDate = dateParser.format(date,Timezone.createTimeZone(TimeZoneConstants.americaNewYork));
Date newDate = dateTimeParser.parse(formattedDate);
这行给我例外。
阅读
DateTimeFormat
的文档后,它表示解析时支持较少的时区。 最佳答案
该代码对我有用:
TimeZoneConstants timeZoneConstants = GWT.create(TimeZoneConstants.class);
DateTimeFormat dateParser = DateTimeFormat.getFormat("dd-MMM-yyyy HH:mm Z");
String formattedDate = dateParser.format(date, TimeZone.createTimeZone(timeZoneConstants.americaNewYork()));
Date newDate = dateParser.parse(formattedDate);
我通过延迟绑定创建了
TimeZoneConstants
,并将格式更改为dd-MMM-yyyy HH:mm Z
(大写Z
)-使用z
确实得到了IllegalArgumentException
。如果仍然遇到问题,请尝试深入检查解析功能以找出确切的问题。