日期的格式因地区而异, 这就是我们将日期国际化的原因。
我们可以使用DateFormat类的getDateInstance()方法对日期进行国际化。它接收语言环境对象作为参数, 并返回DateFormat类的实例。
DateFormat类用于国际化日期的常用方法
DateFormat类有许多方法。让我们看一下DateFormat类的两个方法来国际化日期。
- public static DateFormat getDateInstance(int style, Locale locale)返回指定样式和语言环境的DateFormat类的实例。样式可以是DEFAULT, SHORT, LONG等。
- public String format(Date date)以字符串形式返回格式化和本地化的日期。
【Java国际化日期(带日期的I18N)】在此示例中, 我们根据英国, 美国, 法国等不同的语言环境显示日期。为此, 我们创建了printDate()方法, 该方法接收Locale对象作为实例。 DateFormat类的format()方法接收Date对象, 并以字符串形式返回格式化和本地化的日期。
import java.text.DateFormat;
import java.util.*;
public class InternationalizationDate {
static void printDate(Locale locale){
DateFormat formatter=DateFormat.getDateInstance(DateFormat.DEFAULT, locale);
Date currentDate=new Date();
String date=formatter.format(currentDate);
System.out.println(date+" "+locale);
}public static void main(String[] args) {
printDate(Locale.UK);
printDate(Locale.US);
printDate(Locale.FRANCE);
}
}
Output:01-Mar-2012 en_GB
Mar 1, 2012 en_US
1 mars 2012 fr_FR
推荐阅读
- Java国际化编号(带编号的I18N)
- Java货币国际化(使用货币的I18N)
- Java的国际化和本地化
- Java InetAddress类
- 如何从Java中的另一个类调用私有方法
- 在Applet中显示图形
- Java finally块
- Java异常传播
- Java中方法重写的异常处理