在icu4j中,我们可以按地区获得显示月份名称,如下所示
SimpleDateFormat formatter
= new SimpleDateFormat ("yyyy MMM dd");
String dateString = formatter.format(calendar.getTime());其中返回当前日期,并在geregorian日历中使用月份名称。
但是使用icu4j可以得到伊斯兰月的月份名称吗?
发布于 2016-12-04 02:51:41
ULocale locale = new ULocale("@calendar=islamic");
Calendar islamicCalendar = Calendar.getInstance(locale);
// full date
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL, locale);
System.out.println(df.format(islamicCalendar.getTime()));
// date in "yyyy MMM dd" format
SimpleDateFormat df1 = new SimpleDateFormat ("yyyy MMM dd", locale);
System.out.println(df1.format(islamicCalendar.getTime()));
// name of month
SimpleDateFormat df2 = new SimpleDateFormat (SimpleDateFormat.MONTH, locale);
System.out.println(df2.format(islamicCalendar.getTime()));
// name of weekday
SimpleDateFormat df3 = new SimpleDateFormat (SimpleDateFormat.WEEKDAY, locale);
System.out.println(df3.format(islamicCalendar.getTime()));产出:
AH 1438 Rabiʻ I 5, Sun
1438 Rab. I 05
Rabiʻ I
Sun如果希望输出位于特定的区域设置中,请将该区域设置放在@calendar=islamic之前。
阿拉伯语地区的例子:
ULocale locale = new ULocale("ar@calendar=islamic");
...产出:
الأحد، ٥ ربيع الأول، ١٤٣٨ هـ
١٤٣٨ ربيع الأول ٠٥
ربيع الأول
الأحدhttps://stackoverflow.com/questions/40838935
复制相似问题