Spec-Zone .ru
спецификации, руководства, описания, API
След: Интернационализация
Урок: Форматирование
Раздел: Даты и Времена
Изменение Символов Формата Даты
Домашняя страница > Интернационализация > Форматирование

Изменение Символов Формата Даты

format метод SimpleDateFormat class возвращает a String составленный из цифр и символов. Например, в String "Пятница, 10 апреля 2009" символы являются "пятницей" и "апрелем". Если символы, инкапсулировавшие в SimpleDateFormat не удовлетворяйте свои потребности, можно изменить их с DateFormatSymbols. Можно изменить символы, которые представляют имена в течение многих месяцев, дней недели, и часовых поясов, среди других. Следующая таблица приводит DateFormatSymbols методы, которые позволяют Вам изменять символы:

DateFormatSymbol Методы
Метод метода set Пример Символа Метод Изменяет
setAmPmStrings PM
setEras AD
setMonths Декабрь
setShortMonths Декабрь
setShortWeekdays Вторник
setWeekdays Во вторник
setZoneStrings PST

Следующий пример вызывает setShortWeekdays изменить краткие названия дней недели от нижнего регистра до символов верхнего регистра. Полный исходный код для этого примера находится в DateFormatSymbolsDemo. Первый элемент в параметре массива setShortWeekdays нуль String. Поэтому массив на основе одно, а не основан на нуле. SimpleDateFormat конструктор принимает измененный DateFormatSymbols возразите как параметр. Вот исходный код:

Date today;
String result;
SimpleDateFormat formatter;
DateFormatSymbols symbols;
String[] defaultDays;
String[] modifiedDays;

symbols = new DateFormatSymbols( new Locale("en", "US"));
defaultDays = symbols.getShortWeekdays();

for (int i = 0; i < defaultDays.length; i++) {
    System.out.print(defaultDays[i] + " ");
}
System.out.println();

String[] capitalDays = {
    "", "SUN", "MON",
    "TUE", "WED", "THU",
    "FRI", "SAT"
};
symbols.setShortWeekdays(capitalDays);

modifiedDays = symbols.getShortWeekdays();
for (int i = 0; i < modifiedDays.length; i++) {
    System.out.print(modifiedDays[i] + " ");
}
System.out.println();
System.out.println();

formatter = new SimpleDateFormat("E", symbols);
today = new Date();
result = formatter.format(today);
System.out.println("Today's day of the week: " + result);

Предыдущий код генерирует этот вывод:

 Sun Mon Tue Wed Thu Fri Sat 
 SUN MON TUE WED THU FRI SAT 

Today's day of the week: MON

Проблемы с примерами? Попытайтесь Компилировать и Выполнить Примеры: FAQ.
Жалобы? Поздравление? Предложения? Дайте нам свою обратную связь.

Предыдущая страница: Настройка Форматов
Следующая страница: сообщения