java - 有没有办法将日期格式的偏移参数与冒号一起使用?

标签 java date simpledateformat

<分区>

我正在使用 java 的 SimpleDateFormat,这是我的代码: 日期 date = new Date(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss.SSSZ"); String strDate = simpleDateFormat.format(date); System.out.println(strDate);

打印出:

2019-11-15T11:59:47.289+0200

但是,我想在偏移量内有一个冒号,这意味着它需要看起来像这样:

2019-11-15T11:59:47.289+02:00

有没有办法添加像这里的第二个例子那样打印出来的时区?

最佳答案

你所说的不是时区(如 UTC),而是一个偏移量(如 +01:00)。

您可以使用现代日期时间 API java.time,它具有内置的 DateTimeFormatter.ISO_OFFSET_DATE_TIME,可根据需要格式化偏移量:

import java.time.OffsetDateTime;
import java.time.format.DateTimeFormatter;


public class StackoverflowDemo {

    public static void main(String[] args) {
        OffsetDateTime odt = OffsetDateTime.now();
        System.out.println(odt.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME));
    }
}

我系统的输出是这样的:

2019-11-15T11:30:46.532+01:00

关于java - 有没有办法将日期格式的偏移参数与冒号一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58875016/

相关文章:

javascript - Libgdx HTML5 AnimationScheduler 长度为空

sql-server - 如何将 dd/mm/yy 转换为日期数据类型

java - Groovy 中的日期格式

Java 仅显示年份

java:将表示两位数年份的字符串转换为四位数

Java 检查字符串中是否添加了某些内容

java - 将 BoxLayout 设置为我的 JPanel 后,我的图像无法正常显示

java - 我可以使用 Ant 检测我是否在 Linux 系统(而不是通用 Unix 系统)上吗?

mysql - 无法使用 mySQL 将字符串格式化为时间戳?

javascript - 在 react js 中搜索一个好年选择器下拉包。我试过 react-year-picker 但图书馆有一些错误