java - 带时区的简单日期格式

标签 java android

我正在尝试从 java.util.Date 格式化日期。我需要这种格式:

2016-06-10T13:38:13.687+02:00

如何正确地将其从标准日期格式转换

CDT 2009 年 5 月 4 日 09:51:52

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss z", Locale.getDefault());
sdf.format(new Date());

不幸的是,这段代码没有返回值 +02:00

最佳答案

根据标准 Java 文档: https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

获取日期和时间格式

2001-07-04T12:08:56.235-07:00


您需要使用以下字符串模式:

"yyyy-MM-dd'T'HH:mm:ss.SSSXXX"

所以用下面的代码,你可以得到你想要的:

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX", Locale.getDefault());
    simpleDateFormat .format(new Date());

关于java - 带时区的简单日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37747467/

相关文章:

java - 错误的 xml block 3 线性布局和 2 日历

java - Install4J:stderr 和返回代码重定向到变量仅写入一次

java - 避免在不同的 Groovy 脚本之间共享 Java 元类

android - 在android中没有对话框的进度条

java - 来自 Web 服务的日期时间对象显示在带有模式的 Android textview 上?

java - 从某些示例线程代码中获取 RuntimeException

android - 如何从一个 Activity 中完成一系列开放的子 Activity ?

java - 如何仅使用 7 次比较对 5 项进行排序

java - 如何根据 Bean 定义是否存在注释来确定其优先级?

java - 执行后台任务——替代 AsyncTask?