ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Text_bel_BY.propertiesВ файлах свойств информация должна быть организована по принципу: key1 = value1 key2 = value2 … Например: str1 = To be or not to be? Перечисление всех ключей в виде Enumeration<String> можно получить вызовом метода getKeys(). Конкретное значение по ключу извлекается методом String getString(String key). В следующем примере в зависимости от выбора пользователя известная фраза будет выведена на одном из трех языков. // пример # 16: поддержка различных языков: HamletInternational.java package chapt8; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util.Locale; import java.util.ResourceBundle;
public class HamletInternational { public static void main(String[] args) { String country = "", language = ""; System. out. println("1 - Английский"); System. out. println("2 - Белорусский"); System. out. println("Любой символ - Русский"); char i = 0; try { i = (char) System. in. read(); } catch (IOException e1) { e1.printStackTrace(); } switch (i) { case '1': country = "US"; language = "EN"; break; case '2': country = "BY"; language = "BEL"; } Locale current = new Locale(language, country); ResourceBundle rb = ResourceBundle. getBundle ("text", current); try { String st = rb.getString("str1"); String s1 = new String(st.getBytes("ISO-8859-1"), "UTF-8"); System. out. println(s1);
st = rb.getString("str2"); String s2 = new String(st.getBytes("ISO-8859-1"), "UTF-8"); System. out. println(s2); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } } Файл text_en_US.properties содержит следующую информацию: str1 = To be or not to be? str2 = This is a question. Файл text_bel_BY.properties: str1 = Быць або не быць? str2 = Вось у чым пытанне. Файл text.properties: str1 = Быть или не быть? str2 = Вот в чём вопрос. Интернационализация чисел Стандарты представления дат и чисел в различных странах могут существенно отличаться. Например, в Германии строка "1.234,567" воспринимается как «одна тысяча двести тридцать четыре целых пятьсот шестьдесят семь тысячных», для русских и французов данная строка просто непонятна и не может представлять число. Чтобы сделать такую информацию конвертируемой в различные региональные стандарты, применяются возможности класса java.text.NumberFormat. Первым делом следует задать или получить текущий объект Locale с шаблонами регионального стандарта и создать с его помощью объект форматирования NumberFormat. Например: NumberFormat nf = NumberFormat.getInstance(new Locale("RU")); с конкретными региональными установками или с установленными по умолчанию для приложения: Не нашли, что искали? Воспользуйтесь поиском:
|