日期:2014-05-20 浏览次数:20966 次
set path=%path%;C:\jdk1.5\bin native2ascii -encoding gb2312 ApplicationResources_temp.properties ApplicationResources_zh_CN.properties native2ascii -encoding gb2312 displaytag_temp.properties displaytag_zh_CN.properties native2ascii -encoding gb2312 eduadminResources_temp.properties eduadminResources_zh_CN.properties native2ascii -encoding gb2312 studentResources_temp.properties studentResources_zh_CN.properties
------解决方案--------------------
改改Properties类
public synchronized void load(InputStream inStream) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(inStream, "8859_1"));
改成
public synchronized void load(InputStream inStream) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(inStream, "GBK"));
------解决方案--------------------
是text文件,用Properties类是因为方便而且效率高。
text文件格式就是我前面说的,上千行:
00001 中文名1
00002 中文名2
....
如果直接读,请问怎么效率高一些
_____________________
不同问题,不同分析,你要把这些读到什么地方,用这些做什么?
------解决方案--------------------
第一步:
native2ascii.exe -encoding utf-8 .\src\Movision\Resource.properties .\classes\Movision\Resource.properties
(注意:properties文本用GB2312编码)
第二步:
public static void init() {
if (resources == null) {
resources = ResourceBundle.getBundle(sResourcesName);
}
}
/**
* @param sKeyName 被读取的Key=Value对
* @return 返回sKeyName对应的值
*/
public static String getString(String sKeyName) {
String sResult = null;
try {
init();