如何将LocalDate格式更改为LocalDate而不生成字符串[duplicate]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将LocalDate格式更改为LocalDate而不生成字符串[duplicate]相关的知识,希望对你有一定的参考价值。
需要将LocalDate
格式的Java dd-MM-yyyy
转换为LocalDate
的dd/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 并保持格式不变