gpt4 book ai didi

java - 如何在 DateTime-Pattern 中设置前导零可选

转载 作者:行者123 更新时间:2023-12-03 12:10:53 24 4
gpt4 key购买 nike

我有一个用户输入字段,想解析他的日期,无论他输入什么。

用户可能会为他的日期提供前导零或没有前导零,所以我希望能够解析这样的输入

02.05.2019

还有这个
2.5.2019

但据我所知,没有办法让前导零可选,要么总是有 2 位数字,如 01、03、12 等,或者只有必要的数字,如 1、3、12。

所以显然我必须决定是否允许前导零,但是真的没有办法让前导零可选吗?

好吧,我测试了一个包含前导零 dd.MM.uuuu 的模式,我测试了一个不包含前导零 d.M.uuuu 的模式,当我用错误的模式解析错误的输入时,抛出了异常。

因此,我的问题是是否有办法使前导零可选。

最佳答案

当你知道它时,这是微不足道的。一个模式字母,例如 dM , 将接受一位或两位数字(或最多 9 位年份)。

    DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("d.M.u");
System.out.println(LocalDate.parse("02.05.2019", dateFormatter));
System.out.println(LocalDate.parse("3.5.2019", dateFormatter));
System.out.println(LocalDate.parse("4.05.2019", dateFormatter));
System.out.println(LocalDate.parse("06.5.2019", dateFormatter));
System.out.println(LocalDate.parse("15.12.2019", dateFormatter));

输出:

2019-05-02
2019-05-03
2019-05-04
2019-05-06
2019-12-15


我在文档中搜索了这些信息,但没有轻易找到。我认为它没有很好的记录。

关于java - 如何在 DateTime-Pattern 中设置前导零可选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57393902/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com