FileInputStream fis = new FileInputStream(file);
InputStreamReader reader = new InputStreamReader(fis);
char[] b = new char[fis.available()];我同一个文件,在我自己的机子上读是乱码,但是到别个电脑上去读取很正常(读文件代码一样),请问大侠们是怎么回事啊

解决方案 »

  1.   

    new InputStreamReader(new FileInputStream(fileName), "charsetName")
      

  2.   

    请问LZ用的是什么IDE,netbeans吗?我记得用这个需要将编码格式调成GBK就好了,重新载入编译
    用UTF-8就会乱码的。
      

  3.   

    我懂你们的意思,我把编码设置成UTF-8(设成GBK照常是乱码) 我的机子倒是正常了,但是别人的机子上又成了乱码,哎,不晓得咋个办?
      

  4.   

    -Dfile.encoding=utf-8加到属性里面试试看,这个是设置jvm使用的默认的编码格式为utf-8
      

  5.   

    -Dfile.encoding=utf-8加到属性里面
       请问怎么加,谢谢!!!!
      

  6.   

    講法有缺點,不用請出為char,可以用String 或者byte,應不會有這樣的問題
      

  7.   


    两种方法:
    第一种,写在程序里:System.setProperty("file.encoding", "UTF-8");
    第二种,启动程序的命令行中加入,例如java -Dfile.encoding=UTF-8 -jar server.jar
    第三种,其实跟第二种一样,不过是加在eclipse的Run Configuration中的VM arguments选项中:在其中填上:-Dfile.encoding=UTF-8以上三种办法根据实际环境进行适当选择