gpt4 book ai didi

android - 如何在java中将西方日期转换为日本日期?

转载 作者:行者123 更新时间:2023-11-29 18:27:18 26 4
gpt4 key购买 nike

我有一个西方日期字符串。我想要的是日文格式。

String date = "2015-06-01";

我想要的是日文格式。请帮助我!

output = 平成27年6月1日

最佳答案

你可以使用我的库 Time4A这也适用于较低的 Android API 级别,然后使用其 JapaneseCalendar :

    String input = "2015-06-01";
PlainDate gregorian = Iso8601Format.EXTENDED_DATE.parse(input);
ChronoFormatter<JapaneseCalendar> f = // immutable, so you can make it static
ChronoFormatter.ofStyle(DisplayMode.MEDIUM, Locale.JAPANESE, JapaneseCalendar.axis());
String output = f.print(gregorian.transform(JapaneseCalendar.axis()));
System.out.println(output); // 平成27年6月1日

我还对 java.time 包进行了实验,该包从 API 级别 26 开始可用,但无法快速找到生成所需格式的方法:

    DateTimeFormatter dtf =
DateTimeFormatter.ofLocalizedDate(FormatStyle.MEDIUM)
.withLocale(Locale.JAPAN)
.withChronology(JapaneseChronology.INSTANCE);
JapaneseDate japaneseDate = JapaneseDate.from(LocalDate.parse(input));
System.out.println(dtf.format(japaneseDate)); // H27.06.01

数字是正确的,但它不使用日文符号和字母,尽管我指定了日本语言环境。也许使用构建器和手工制作的模式的解决方法会进一步提供帮助。请注意,我的实验是在 Java-8 环境中执行的。也许 Android 或更新的 Java 版本不同?!

关于android - 如何在java中将西方日期转换为日本日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58162104/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com