ISO 8601 持续时间格式。
ISO 8601 中定义了一个时间间隔,
格式如下:
ISO 8601持续时间格式如下:
P(n)Y(n)M(n)DT(n)H(n)M(n)S
其中:
- P是持续时间指示符,始终放置在持续时间的开头位置
- T是表示时间元素开始的指示符
(n)
为时间值
符号 | 含义 |
---|---|
Y | 年 |
M | 月 |
D | 日 |
W | 星期 |
H | 时 |
M | 分 |
S | 秒 |
示例
P3M
上面的时间表示的是时间间隔为 3 个月。
通常我们在 Java 项目中可以用来计算 2 个时间的不同。
例如我们当前有一个需求为,我们需要对数据进行处理,但是数据处理时间为当前的时间减去 3 个月的这个时间间隔。
在 API 中,我们可以直接定义数字 3 ,但是我们觉得这样不够标准化,所以我们就可以在 API 中传入参数 P3M,然后在后端进行计算就可以了。
例如我们使用下面的代码:
Period p = Period.parse("P3M");
LocalDate currentDate = LocalDate.now();
log.debug("{}", currentDate.minus(p).toString());
程序将会输出当前的日期减去 3 个月。
![2022-11-14_11-19-43](https://cdn.ossez.com/discourse-uploads/optimized/2X/8/8f0d4d19e7321d212b5267a83359aa7ae8c8fad0_2_690x200.png)
尽量使用标准的表示吧,系统的处理更加方便。
https://www.ossez.com/t/iso-8601/14201
标签:持续时间,P3M,8601,时间,格式,ISO From: https://www.cnblogs.com/huyuchengus/p/16891074.html