如何将LocalDate格式更改为LocalDate而不生成字符串[duplicate]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将LocalDate格式更改为LocalDate而不生成字符串[duplicate]相关的知识,希望对你有一定的参考价值。

需要将LocalDate格式的Java dd-MM-yyyy转换为LocalDatedd/MM/yyyy

尝试使用:

DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("dd/MM/yyyy");
LocalDate date = // LocalDate value in dd-MM-yyyy format
String stringDate = dateFormat.format(date);
LocalDate convertedDate = LocalDate.parse(stringDate, dateFormat);

但是仍然导致返回dd-MM-yyyy格式的日期。有任何有效的方法吗?

答案

LocalDate.java中的默认toString实现似乎以'-'作为分隔符。因此,所有默认的打印语句将产生相同的格式。似乎唯一的出路是使用格式化程序并获取字符串输出。

return buf.append(monthValue < 10 ? "-0" : "-")
            .append(monthValue)
            .append(dayValue < 10 ? "-0" : "-")
            .append(dayValue)
            .toString();

此外,LocalDate.parse(..)的目的不是转换日期格式。实际上,这实际上只是想获取String中的日期值并提供一个结果LocalDate实例。

希望这会有所帮助。

以上是关于如何将LocalDate格式更改为LocalDate而不生成字符串[duplicate]的主要内容,如果未能解决你的问题,请参考以下文章

如何将 LocalDate 对象格式化为 MM/dd/yyyy 并保持格式不变

如何将 LocalDate 格式化为字符串?

如何将当前数组格式更改为对象数组格式?

如何使用 T 和 Z 将 LocalDate 格式化为 ISO 8601?

氧图。如何将轴旁边的值格式从 1000 更改为 1k

我们如何将 com.datastax.driver.core.LocalDate 转换为 YYYY/MM/DD 格式?