java - 将字符串时间戳调整为 GMT

标签 java

我有一个带有本地时间的String:

"2012-12-12T08:26:51+000"

我现在需要根据旧的String 创建一个带有GMT 时间的String。例如,假设本地与 GTM 之间存在 2 小时时差:

"2012-12-12T10:26:51+000"

我创建了一个SimpleDateFormat:

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss+SSSS"); 
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
String time = dateFormat.parse(mCreatedTime).toString();

但是时间字符串现在采用不同的格式:

Wed Dec 12 etc

如何使输出格式为 yyy-MM-dd'T'HH:mm:ss+SSSS 但 GMT 时间?

最佳答案

dateFormat.parse() 方法返回 Date 的实例,当您对其调用 toString() 时,日期将在默认区域设置中打印。

使用dateFormat.format()将日期值恢复为所需的格式。

关于java - 将字符串时间戳调整为 GMT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13844446/

相关文章:

java - 当我添加 ExecutionHandler 时,netty 服务器似乎被阻止了?

java - 如何使用 Java 流将两个数组合并到一个映射中?

java - 执行 Java 中嵌入的 HBASE 和 Pig 时出错

java - 如何在不使用Thread.sleep的情况下在java中执行定期检查?

java - void...参数在java函数声明中的含义

java - Apache TomEE 内存泄漏

java - jersey 2 的 ConstraintAnnotations 不起作用

java - 如何更改 JAXB Marshaller 行分隔符?

java - 在 Java 中隐藏一个 "local"类型参数

java - 找不到类 - JavaFX native 打包