java - 如何将 "2014-08-10T06:34:04-0500"转换为 SimpleDateFormat

标签 java android simpledateformat

如何将2014-08-10T06:34:04-0500转换为SimpleDateFormat,我已经尝试过

new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss-SSSS"),

但它不是那样工作的。

编辑。如果有人遇到类似的问题,那么这种模式 - “yyyy-MM-dd'T'HH:mm:ssZ”将在 Android 上运行,根据 http://developer.android.com/reference/java/text/SimpleDateFormat.html

并且可能在 Java 1.7 之前的版本上,以及在 Java 1.7 - .. 上,使用 T.J. 的答案。克劳德给出了。

最佳答案

末尾的 -0500 不是毫秒(S 格式字符),它是一个 ISO-8601 时区指示器(当前版本中为 X format character Java 的;请注意,它是最近在 Java 7 中添加的)。 - 是时区指示器的一部分,而不是分隔符,因此您不需要在字符串中包含 -

所以:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX")

在 Java 6 及更早版本中,您可能会使用 Z 时区格式字符而不是 X。但 Java 7 已经三年多前发布了,所以...

关于java - 如何将 "2014-08-10T06:34:04-0500"转换为 SimpleDateFormat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25229210/

相关文章:

java - 使用 java sslSocket 与 Google 通信时未收到响应

java - 简单日期格式错误

java - Android格式化带时区的日期

java - 多个 Spring Batch 作业并发执行导致 Spring Batch 元数据表中出现死锁

java - 如何让 Eclipse 编译 WEB-INF/classes 中的 java 文件

java - 在 Android 中使用 httpPost 发送数据后,如何检索从 servlet 返回的数据

android - 如何在 Android 中使用 retrofit 2 以 JSON 格式上传多部分图像数据?

android - 如何禁用 FragmentStatePagerAdapter 上的滑动?

android - UTC 时间不匹配 - Java 与 Node JS 上的 Moment

java - 如何将映射的键设置为变量名