linux下java程序中的乱码问题
程序如下:
public class Test {
public static void main(String args[]) {
java.io.File f = new java.io.File( "c:/test ");
java.io.File[] ff = f.listFiles();
for (int i = 0;i < ff.length;i ++){
System.out.println(ff[i].getName());
}
}
}
c:/test下的文件名称有非英文的,例如:中文,日文等。
输出来的结果是乱码。
但是System.out.println( "非英文 ");直接输出就不是乱码。
期待高手解决。
------解决方案--------------------Unicode问题
------解决方案--------------------String encoding = System.getProperty( "file.encoding ");
System.out.print(new String(ff[i].getName().getBytes(encoding), "iso-8859-1 "));