CSDN博客

img xkou

Java程序的国际化

发表于2004/10/20 19:52:00  881人阅读

分类: Java

java 支持多种语言资源而不需要修改程序,只要在程序外写入配置文件即可以
下面是一个区分不同语言而显示不同内容的例子
首先在程序外新建几个不同国家的资源文件的例子如
MessagesBundle.properties
MessagesBundle_de_DE.properties
MessagesBundle_en_US.properties
MessagesBundle_fr_FR.properties
MessagesBundle_en_US.properties的内容为:
greetings = Hello. farewell = Goodbye. inquiry = How are you?
MessagesBundle_fr_FR.properties的内容为:
greetings = Bonjour. farewell = Au revoir. inquiry = Comment allez-vous?
可以看出前边是键值,后面为字符串 调用时便可以这样
import java.util.*;
public class test{
 public static void main(String[] args){
  Locale currentLocale;
  ResourceBundle messages;
  
  currentLocale = new Locale("en", "US");
  
  messages = ResourceBundle.getBundle("MessagesBundle",
                                     currentLocale);
  System.out.println(messages.getString("greetings"));
  System.out.println(messages.getString("inquiry"));
  System.out.println(messages.getString("farewell"));
 }
}
显示结果为
Hello. How are you? Goodbye.

同样可以为数字或是货币表示本地化 这是一个在 Java-tutorial.chm 上的一个例子 显示NumberFormatDemo.java 主要代码为: Double amount = new Double(345987.246); NumberFormat numberFormatter; String amountOut; numberFormatter = NumberFormat.getNumberInstance(currentLocale); amountOut = numberFormatter.format(amount); System.out.println(amountOut + " " + currentLocale.toString()); 输出为:
345 987,246 fr_FR 345.987,246 de_DE 345,987.246 en_US
也可以自定义输出样式:
import java.util.*; import java.text.*; public class custformat{ public static void main(String[] args){ Locale currentLocale=new Locale("en","US"); DecimalFormatSymbols unusualSymbols = new DecimalFormatSymbols(currentLocale); unusualSymbols.setDecimalSeparator('|'); unusualSymbols.setGroupingSeparator('^'); String strange = "#,##0.###"; DecimalFormat weirdFormatter = new DecimalFormat(strange, unusualSymbols); weirdFormatter.setGroupingSize(4); String bizarre = weirdFormatter.format(12345.678); System.out.println(bizarre); } }
定义匹配规则在 http://java.sun.com/j2se/1.4.2/docs/api/java/text/DecimalFormatSymbols.html
阅读全文
0 0

相关文章推荐

img
取 消
img