android - 如何在java中将西方日期转换为日本日期?
问题描述
我有一串西方日期。我想要的是日文格式。
String date = "2015-06-01";
我想要的是日文格式。请帮我!
output = 平成27年6月1日
解决方案
作为对 Meno Hochschild 答案的一个小补充,如果您想为此使用 java.time ,您可以这样做:
DateTimeFormatter japaneseEraDtf = DateTimeFormatter.ofPattern("GGGGy年M月d日")
.withChronology(JapaneseChronology.INSTANCE)
.withLocale(Locale.JAPAN);
String date = "2015-06-01";
LocalDate gregorianDate = LocalDate.parse(date);
JapaneseDate japaneseDate = JapaneseDate.from(gregorianDate);
System.out.println(japaneseDate.format(japaneseEraDtf));
输出是:
平成27年6月1日</p>
我想这是你要求的。
如果我理解正确,java.time 不会像日本人通常期望的那样格式化一个时代的第一年,而 Meno Hochschild 的 Time4A 库会这样做,所以在所有条件相同的情况下,你会更喜欢他的答案。
我从buræquete 的这个答案中偷走了格式化程序。
推荐阅读
- java - 如何解析适用于所有分隔符的 Java 中的查询参数?
- html - 如何使元素水平滚动而不是垂直滚动
- javascript - 将两个不同的 Fetch 调用与来自 Jsonplaceholder.com 的数据合并
- elasticsearch - 按术语分组的堆叠视图不适用于 Grafana-Framework 和 Elasticsearch
- ruby - 使用 PG gem 在参数化语句中多次插入
- python - 使用 Gensim Doc2Vec 查找“Doctag”和“infer_vector”之间的距离?
- wordpress - iPad 上的移动视图(Visual Composer / WordPress)
- python - E1101:“Meta”实例没有“title”成员
- android - 如何从 AttributeSet 中获取属性的原始未解析值?
- haskell - 无法匹配 Haskell 中的整数类型