Java 格式 yyyy-MM-dd'T'HH :mm:ss. SSSz 转 yyyy-mm-dd HH:mm:ss

标签 java parsing date simpledateformat

我正在尝试将 yyyy-MM-dd'T'HH:mm:ss.SSSz 格式的日期格式化为 yyyy-mm-dd HH:mm:ss,这应该很容易,但我无法获得它可以工作。

需要解析的日期格式为:2012-10-01T09:45:00.000+02:00
现在我使用这个简单的日期格式化程序来格式化它:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSz", Locale.FRANCE);

然而这给出了类似于 2012-10-01T09:45:00.000UTC+00:00 的输出。

我也尝试使用“yyyy-MM-dd'T'HH:mm:ss.SSSZ”作为模式和“yyyy-MM-ddHH:mm:ss”。后者以 2012-10-01T09:45:00 close 的形式返回日期,但还没有。

我认为将 T 去掉会有点困惑,并且会无缘无故地产生开销,那么格式化这些日期的正确方法是什么?

为了说明我想将 2012-10-01T09:45:00.000+02:00 转换为 2012-10-01 09:45:00

干杯!

最佳答案

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
SimpleDateFormat output = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d = sdf.parse(time);
String formattedTime = output.format(d);

这行得通。您必须使用两种 SimpleDateFormat,一种用于输入,一种用于输出,但它会为您提供您想要的。

关于Java 格式 yyyy-MM-dd'T'HH :mm:ss. SSSz 转 yyyy-mm-dd HH:mm:ss,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15730298/

相关文章:

java - 按下按钮时未调用 Intent

java - 如何知道 jxl 中单元格值的单元格类型?

c++ - 准备调用 ParseAST。 fatal error

parsing - Scala 的 ANTLR 语法?

PHPExcel:如何设置单元格的日期格式

swift - 如何在 Swift 中检查有效的 Date()

java - 我是否需要发布到 Play 商店才能转换到 chromecast?

java - 为什么 JVM 无法检测到缺失的方法实现?

用于在符号处按行分割 JSON 文本的 Java 例程

javascript - 使用 javascript 将 Javascript 日期对象转换为 php Y-m-d 字符串