Как управлять капитализацией имен месяца и дня, возвращенных DateFormat?

Вот быстрая тестовая программа:

    public static void main( String[] args )
{
    Date date = Calendar.getInstance().getTime();

    System.out.println("Months:");
    printDate( "MMMM", "en", date );
    printDate( "MMMM", "es", date );
    printDate( "MMMM", "fr", date );
    printDate( "MMMM", "de", date );

    System.out.println("Days:");
    printDate( "EEEE", "en", date );
    printDate( "EEEE", "es", date );
    printDate( "EEEE", "fr", date );
    printDate( "EEEE", "de", date );

}

public static void printDate( String format, String locale, Date date )
{
    System.out.println( locale + ": " + (new SimpleDateFormat( format, new Locale( locale ) )).format( date ) );
}

Вывод:

Months: en: September es: septiembre fr: septembre de: September Days: en: Monday es: lunes fr: lundi de: Montag

Как я могу управлять капитализацией имен. По некоторым причинам испанцы и французы всегда, кажется, возвращают имена, которые запускаются со строчной буквы.

12
задан user9661 15 September 2008 в 20:44
поделиться

3 ответа

Не все языки совместно используют английские правила капитализации. Я предполагаю, что необходимо было бы изменить данные, используемые API, но неанглийские клиенты не могли бы ценить его...

about.com на французской капитализации

14
ответ дан 2 December 2019 в 05:29
поделиться

Правила капитализации отличаются для различных языков. На французском языке не должны быть использованы для своей выгоды имена месяца.

6
ответ дан 2 December 2019 в 05:29
поделиться

Вы не можете хотеть изменять капитализацию - различные культуры используют для своей выгоды различные слова (например, на немецком языке Вы используете для своей выгоды каждое существительное, не просто имена собственные).

5
ответ дан 2 December 2019 в 05:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: