*/
public class I18NDemoResources_fr_FR
extends ListResourceBundle
{
// Содержит один из локализованных ресурсов. Нам необходимо
// инициализировать данную переменную в статическом
// инициализаторе данного класса.
private static Image applcon;
private Object [][] contents =
{ {'title', 'AlluOOf4, tout le Monde'), // Form title.
// Создаем текст: 'My third MIDlet'. ('greeting', 'Mon troisiuOOe8me MIDlet'),
// «Кнопка была нажата» ('Button was Pressed').
{'alert_title', 'Bouton a uCOe9tuOOe9 pressuOOe9'),
// «Кнопка была нажата» ('The button was pressed').
{'alert_text', 'Le bouton a uOOe9tuOOe9 pressuOOe9!'},
('exit', 'Sortie'), // Пункт меню «Выход» ('Exit').
('menu', 'Menu'), // Экранная клавиша «Меню» ('Menu').
('cancel', 'Quitter'), // Пункт меню «Отмена» ('Cancel').
('stop', 'Arreter'), // Пункт меню «Стоп» ('Stop').
('ok', 'OK'), // Пункт меню «OK».
('alert', 'Alerte'), // Экранная клавиша «Уведомление» ('Alert').
i' sayhi','Dis bonjour'), // Пункт меню «Скажи- привет» ('Say Hi').
('screen', 'Ecran'), // Пункт меню «Экран» ('Screen').
{'item', 'Item'), //.Пункт меню «Предмет» ('Item').
('help', 'Aider'), // Пункт меню «Помощь» ('Help').
('app_icon', applcon) // Значок приложения.
};
/**
Конструктор No-arg.
*/
public I18NDemoResources_fr_FR()
{
super();
/**
Получает содержимое пакета ресурсов.
@возвращает массив пар ключ-значение.
public Object [][] getContents()
{
return contends;
}
// Обратите внимание, что статический инициализатор создает
// экземпляры класса Image с другими изображениями, нежели он
// использует в региональной настройке en_US. static
{
try
{
applcon = Image.createlmage('i!8n-fr_FR.png');
}
catch (lOException ioe)
{
System.out.printIn(ioe.getMessage());
io.e.printStackTracel);
}
}
}
В листинге 9.11 показана программа I18NDemo3, которая использует данный набор классов пакетов ресурсов. Метод startAppO данного MID-лета создает экземпляр соответствующего класса пакета ресурсов. Он создает имя класса, связывая базовое имя семейства файлов локализованных ресурсов, I18NDemoResources, с конечной региональной настройкой. С помощью всего лишь нескольких операторов приложение получает доступ ко всем локализованным ресурсам.
import javax.microedition.midlet.MIDlet;
import javax.microedition.Icdui.Display;
import javax.microedition.Icdui.Displayable;
import]avax.microedition.Icdui.Form;
import Java.util.Hashtable;
Третья версия приложения IlSNDemo.
Данная версия IlSNDemo использует пакет ресурсов для определения локализованных ресурсов. Приложение определяет текущую региональную настройку и пытается загрузить связанный с ней пакет, содержащий соответствующие локализованные ресурсы. Если оно не может найти эти ресурсы, оно загружает ресурсы U.S. English, представленные языком en_US и страной назначения.
Этот подход наиболее предпочтителен. Легко поддерживаются локализованные ресурсы, отличные от строк.
*/
public class I18NDemo3 extends MIDlet
{
// Региональная застройка, указанная для выполнения
// данного МID-лета.
private String locale;