2016-11-28 1 views
1

in icu4j bekommen wir Anzeige Namen des Monats durch locale wie dieseAnzeigenamen für Monat und Tag in der Woche in icu4j für Islamische Zeitrechnung

SimpleDateFormat formatter 
       = new SimpleDateFormat ("yyyy MMM dd"); 
     String dateString = formatter.format(calendar.getTime()); 

der aktuelle Datum Rückkehr mit Monatsnamen in geregorian Kalendern erhalten.
aber Ist es möglich, Monatsname von islamischen Monaten mit icu4j zu erhalten.

+0

Related: https://developer.android.com/guide/topics/resources/icu4j-framework.html –

Antwort

1
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())); 

Ausgänge:

AH 1438 Rabiʻ I 5, Sun 

1438 Rab. I 05 

Rabiʻ I 

Sun 

Wenn Sie eine Ausgabe in einem bestimmten Gebietsschema sein wollen, setzen Sie diese locale vor @calendar=islamic:

Beispiel für arabische locale:

ULocale locale = new ULocale("[email protected]=islamic"); 
... 

Ausgänge :

الأحد، ٥ ربيع الأول، ١٤٣٨ هـ 

١٤٣٨ ربيع الأول ٠٥ 

ربيع الأول 

الأحد 
Verwandte Themen