Sah*_*nda 0 java simpledateformat
我有以下日期字符串来自Android应用程序中的grails服务.
2015-01-13T10:24:55Z
Run Code Online (Sandbox Code Playgroud)
现在我想解析这个字符串使用SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssz");
但我在logcat中得到错误跟随错误.
01-13 10:53:50.674: W/System.err(1794): java.text.ParseException: Unparseable date: "2015-01-13T10:24:55Z" (at offset 10)
Run Code Online (Sandbox Code Playgroud)
请让我知道如何解析这种类型的字符串.
目前您正在使用"通用时区"说明符.为了Z解释为"此值为UTC",您应该使用X:
new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX", Locale.US)
Run Code Online (Sandbox Code Playgroud)
X是ISO-8601时区说明符,包括ZUTC.
或者,您可以将其引用为文字,并将时区明确指定为UTC:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'",
Locale.US);
format.setTimeZone(TimeZone.getTimeZone("Etc/UTC"));
Run Code Online (Sandbox Code Playgroud)
在这种情况下显式设置时区非常重要,否则将使用系统默认时区解析该值.
| 归档时间: |
|
| 查看次数: |
484 次 |
| 最近记录: |