设置的编码方式不其作用。
[code=Java][/code]
package com.charcode;
public class CharCode {
/**
* @param args
*/
public static void main(String[] args)throws Exception {
// TODO Auto-generated method stub
System.setProperty("file.encoding", "iso8859-1");//设置编码方式“代码第一行”
System.getProperties().list(System.out);
String strChina = "中国";
System.out.println("输出其Unicode");
for(int i=0;i<strChina.length();i++){
System.out.println(Integer.toHexString((int)strChina.charAt(i)));
}
System.out.println("输出设定后字符对应的16进制");
byte[] b =strChina.getBytes();
for(int i=0;i<b.length;i++){
System.out.println(Integer.toHexString((int)b[i]));
}
System.out.println("输出");
for(int i=0;i<b.length;i++){
System.out.write(b[i]);
}
System.out.println();
}
}
请问:为什么System.setProperty("file.encoding", "iso8859-1");//设置编码方式“代码第一行”
注释前后都一样,这句没有其作用?大家帮看一下,谢谢。
------解决方案--------------------
我刚碰到过这个问题,貌似file.encoding在代码里设置是不起作用的。
在启动虚拟机的时候创建:java -Dfile.encoding=iso8859-1 com.charcode.CharCode