我用Java i18n来实现多语言界面:ResourceBundle.getBundle(), 如果属性文件是英文内容,可以显示,但是如果是中文内容用ResourceBundle得到的都是乱码,这是什么原因?

解决方案 »

  1.   

    你的properties没有有用native2ascii进行转码?最好是用_zh.properties作为中文的属性文件.
    native2ascii的命令行的命名格式:
    native2ascii -[options] [inputfile [outputfile]] 说明:
    -[options]:表示命令开关,有两个选项可供选择
    -reverse:将Unicode编码转为本地或者指定编码,不指定编码情况下,将转为本地编码。
    -encoding encoding_name:转换为指定编码,encoding_name为编码名称。
     
    [inputfile [outputfile]]
    inputfile:表示输入文件全名。
    outputfile:输出文件名。如果缺少此参数,将输出到控制台。
    示例:
    native2ascii的命令行的命名格式:
    native2ascii -[options] [inputfile [outputfile]]
     说明:
    -[options]:表示命令开关,有两个选项可供选择
    -reverse:将Unicode编码转为本地或者指定编码,不指定编码情况下,将转为本地编码。
    -encoding encoding_name:转换为指定编码,encoding_name为编码名称。
     
    [inputfile [outputfile]]
    inputfile:表示输入文件全名。
    outputfile:输出文件名。如果缺少此参数,将输出到控制台。
    示例:
    将xxx.properties转换为Unicode编码,输出文件到xxx_zh.properties
    native2ascii xxx.properties xxx_zh.properties