我有一个变量:
YearMonth date;
例如,在内部站立"2016-07"
。
我希望它仍然是YearMonth,但是"2016 july"
(注意,没有“ - ”分隔符),或者更好的是"2016 luglio"
,这是意大利语区域设置。
怎么做?
更新
我试过JackDaniels的方法。它实际上可以工作,因为它给了我一个正确格式的日期字符串(str
)。但我需要将该字符串再次放入我的YearMonth变量中。我尝试过:
myVariable = YearMonth.parse(str);
但它返回了一个错误:java.time.format.DateTimeParseException: Text '2014 gennaio' could not be parsed at index 4
我该如何解决这个问题?
答案 0 :(得分:2)
使用新的 DateTimeFormatter 直接解析和格式化YearMonth,并使用Locale设置所需的语言环境。 不要使用SimpleDateFormat。这是旧的Date API的一部分。
尝试运行代码,看看这是否是您想要的Codiva online compiler IDE。
YearMonth yearMonth = YearMonth.of(2016, 7);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy MMMM",
new Locale("it", "IT"));
System.out.println(yearMonth.format(formatter));
Codiva中的完整工作代码。