Программное обеспечение Интернационализация вторая часть является динамичным элементом интернационализации.
- Числовые данные, деньги, время, дата и т.д., могут быть связаны с динамически во время выполнения, он может не так легко отделить от текста приложения, как, но требует специальной обработки. Классы Java API предоставляется для решения этих проблем (находится в пакете java.util и пакете java.text).
- Язык класс
Locale экземпляр объект представляет собой конкретные географические, политические и культурные области.
Сам по себе объект Locale не проверяет язык и страну зоны она представляет информация верна, но для предоставления информации местных стран и регионов чувствительных категорий , связанные с международным форматированием и разбором задачей для завершения местной чувствительной категории. (JDK в классе при необходимости в операции по корректировке его функция на основе Locale класса объектов называется локальной Sensitive).
Далее следуют некоторые из наиболее распространенных API.
Класс DateFormat (дата международной)
DateFormat класс может быть дата / время форматирования объектов является строка даты / времени некоторые страны региона.
Кроме того класс DateFormat Страна может выводить отформатированные даты, она определяет число типа Int постоянная для описания режима отображения даты / времени, в том числе ПОЛНЫЙ, LONG, MEDIUM УМОЛЧАНИЮ, КОРОТКИЙ, когда объекты инстанцирования DateFormat, эти константы могут быть использованы для контроля длины отображения даты / времени.
Есть девять экземпляров класса DateFormat варианты, следующие три параметра в виде полосы, три метода, перечисленные ниже, может быть по отдельности без каких-либо параметров, или просто с параметрами отображения стиля.
- getDateInstance (интермедиат стиль, языковой стандарт aLocale): указанный режим отображения даты и для получения локальной информации DateFormat объекта экземпляра экземпляра объекта не обрабатывает часть значения времени.
- getTimeInstance (интермедиат стиль, языковой стандарт aLocale): режим отображения в заданное время, и для получения локальной информации DateFormat объекта экземпляра экземпляра объекта не обрабатывает часть значения даты.
- getDateTimeInstance (интермедиат dateStyle, Int timeStyle, Язык aLocale): режим отображения одного указанной даты, а информация по местному времени режим отображения, чтобы получить DateFormat объект экземпляра.
Код тестовой записи
@Test
public void demo1(){
// 使用自带的样式格式化日期
// 只要日期
Date date = new Date();
// 有四种显示模式 FULL、LONG、MEDIUM、SHORT
// DateFormat df1 = DateFormat.getDateInstance(DateFormat.FULL);
// DateFormat df1 = DateFormat.getDateInstance(DateFormat.LONG);
// DateFormat df1 = DateFormat.getDateInstance(DateFormat.MEDIUM);
DateFormat df1 = DateFormat.getDateInstance(DateFormat.SHORT);
System.out.println(df1.format(date));
// 只要时间
DateFormat df2 = DateFormat.getTimeInstance(DateFormat.FULL);
// DateFormat df2 = DateFormat.getTimeInstance(DateFormat.LONG);
// DateFormat df2 = DateFormat.getTimeInstance(DateFormat.MEDIUM);
// DateFormat df2 = DateFormat.getTimeInstance(DateFormat.SHORT);
System.out.println(df2.format(date));
//日期和时间都要
DateFormat df3 = DateFormat.getDateTimeInstance();
System.out.println(df3.format(date));
}
Я не бегу карты результатов, и мы все бегут чувствовать.
Являются ли некоторые из применений API, там действительно ничего, непосредственно присоединенные некоторый тестовый код , который может понять использование API.
@Test
public void demo2(){
//设置Locale
Date date = new Date();
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL,Locale.CANADA);
System.out.println(dateFormat.format(date));
}
класс NumberFormat (международные данные)
- NumberFormat класс экземпляра, объект может быть использован в качестве параметра локали не могут быть использованы, перечислены ниже приведены параметры.
- getNumberInstance (локал): местная информация для определенных параметров объекта локала NumberFormat экземпляр объекта получают с множеством применений.
- getIntegerInstance (локал): Параметры локали для локальной информации идентифицированного объекта для получения экземпляра объекта обработки NumberFormat целых чисел.
- getCurrencyInstance (локал): Параметры локали для локальной информации идентифицированного объекта для получения экземпляра объекта обработки NumberFormat валюты.
- getPercentInstance (локали): локальная информация для идентифицированного объекта Параметры экземпляра локаль NumberFormat полученного процентного значения объекта обработки.
Код тестовой записи
@Test
public void demo3() {
// 保留小数有效位数
double d = 1.23456789456789;
// 保留两位小数
NumberFormat format = NumberFormat.getNumberInstance();
// 最大两位小数
format.setMaximumFractionDigits(2);
// 最小两位小数
format.setMinimumFractionDigits(2);
System.out.println(format.format(d));
// 货币格式化
int i = 100;
// 显示美元
NumberFormat format2 = NumberFormat.getCurrencyInstance(Locale.US);
System.out.println(format2.format(i));
// 百分比格式化
double d2 = 0.78123;
NumberFormat format3 = NumberFormat.getPercentInstance();
System.out.println(format3.format(d2));
// 想显示两位小数
format3.setMaximumFractionDigits(2);
format3.setMinimumFractionDigits(2);
System.out.println(format3.format(d2));
}
Здесь интернационализация динамических элементов на введении закончена, некоторые из требуемой памяти знаний не на, по сути, нечего сказать, следующий шаг является последней частью интернационализации программного обеспечения, динамического текста интернационализации.