gpt4 book ai didi

java - LocalDateTime.toString - 可以在环境中配置格式吗?

转载 作者:行者123 更新时间:2023-12-02 01:07:19 48 4
gpt4 key购买 nike

我有使用 myTime.toString 将 LocalDateTime 保存为字符串的代码。使用 Spring 转换器将其从字符串转换为 LocalDateTime 时会读回它。任何地方都没有格式化,设置为使用系统默认值。

在一种环境中读取它,因为默认格式似乎不正确 (2019-03-01T11:51:07.017)

Caused by: org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [java.time.LocalDateTime] for value '2020-01-13T07:00'; nested exception is java.time.format.DateTimeParseException: Text '2020-01-13T07:00' could not be parsed at index 16

此属性是否有任何系统范围的配置,或者我应该在任何地方显式格式化?

最佳答案

Is there any system-wide configuration of this property …

没有。

LocalDateTime.toString() 生成的格式是固定的,您无法以任何方式更改它。来自文档:

The output will be one of the following ISO-8601 formats:

  • uuuu-MM-dd'T'HH:mm
  • uuuu-MM-dd'T'HH:mm:ss
  • uuuu-MM-dd'T'HH:mm:ss.SSS
  • uuuu-MM-dd'T'HH:mm:ss.SSSSSS
  • uuuu-MM-dd'T'HH:mm:ss.SSSSSSSSS

The format used will be the shortest that outputs the full value of the time where the omitted parts are implied to be zero.

因此,影响格式的唯一方法是控制 LocalDateTime 中是否有任何秒或秒的一小部分。

… or should I just explicitly format everywhere?

我不确定这是否对您有帮助。正如 Andreas 在评论中所说,one-arg LocalDateTime.parse() 解析 2020-01-13T07:002019-03-01T11:51 :07.017 很好。对于您的问题,我能想到的唯一解释是使用默认格式化程序之外的其他格式化程序进行解析。

链接

关于java - LocalDateTime.toString - 可以在环境中配置格式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59845805/

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