1
我的要求是格式化日期,如“新年在”+ someYear +“已打开”+ someDay。 我们如何使用DateTimeFormatterBuilder实现这一目标?如何在Java 8中使用DateTimeFormatterBuilder进行自定义日期分层?
我的要求是格式化日期,如“新年在”+ someYear +“已打开”+ someDay。 我们如何使用DateTimeFormatterBuilder实现这一目标?如何在Java 8中使用DateTimeFormatterBuilder进行自定义日期分层?
我尝试这样做如下:
DateTimeFormatter customFormatter = new DateTimeFormatterBuilder()
.appendLiteral("New Year in ")
.appendValue(ChronoField.YEAR)
.appendLiteral(" was on ")
.appendText(ChronoField.DAY_OF_WEEK,TextStyle.FULL_STANDALONE)
.toFormatter();
LocalDate ld1 = LocalDate.of(2016, Month.JANUARY, 1);
String formatted = ld1.format(customFormatter);
System.out.println(formatted);
但是,我认为它有一个流程,我们需要明确地传递准确的新的一年的日期。但是,它解决了我特别解析/格式化日期的问题。
这里需要建筑师吗?也许你还可以使用“'yyyy'中的'新年'是'EEEE'的模式? (文字可以被apostrophs逃脱) –