我用CsvReader这个类去读取csv文件,但是文件包含中文的时候,读出来直接是乱码 这是怎么回事????
希望高手帮我解决,很着急~~~~!!!!!!

解决方案 »

  1.   

    哎,连代码都不贴一下,害得我还要去 google 一下 CsvReader 是啥。CsvReader 有个这样的构造:CsvReader(InputStream inputStream, Charset charset),后面一个可以指定编码。
      

  2.   

    java 学习群  108363309
      

  3.   

    CsvReader br = new CsvReader(filename,',',Charset.forName("SJIS"));
    我初始化的一句,由于代码很多 就没有贴  不知道是不是这个字符集的问题???
      

  4.   


    CsvReader br = new CsvReader(filename,',',Charset.forName("SJIS"));
    我初始化的一句,由于代码很多 就没有贴 不知道是不是这个字符集的问题???
      

  5.   


    这个代码不是我写的 ,我刚来公司 ,要维护一个模块,现在有这个bug。我不是很清楚 我觉得可能是字符集的问题。那中文的字符集应该是什么呢???
      

  6.   

    中文字符集有 GB2312、GBK、GB18030,甚至 UTF-8 中也含有中文具体的要看这个文件是采用什么编码的。
      

  7.   

    能用 notepad 记事本打开么?如果你用的操作系统是简体中文版的,而不是其他的话,用 notepad 打开,点“另存为”(不是真的要存,只是看一下),那里有个“编码”选项,如果是 ANSI 的话,并且你的操作系统是简体中文版,那就是 GBK 编码,如果那个编码为 UTF-8 的话,那就是 UTF-8 编码。如果你的操作系统是日文的话,那我就不大清楚了,不会日文也没用过日文操作系统。
      

  8.   

    SJIS是日文Shift-Jis碼, 你用emeditor或者IE之类的,看看你的csv文件是什么编码,再决定用什么编码
      

  9.   


    解决了,太感谢了 我把字符集改成GB2312了。 UTF-8貌似不行。(话说之前我就觉得怎么乱码都是日语的...)
    加班到现在啊还好解决问题了。
      

  10.   


    恩 谢谢 已经解决了  把编码换成GBK2312了。
      

  11.   

    建议改成 GBK 吧,GBK2312 不能处理繁体汉字
      

  12.   

    用 GB2312 能行的话,用 GBK 肯定也能行,因为 GBK 是兼容 GB2312 的,并且扩展了很多很多的字。
      

  13.   

    哈哈,解决就好,解决就好,还是建议使用 GBK快点回家休息吧 :-)
      

  14.   


    恩 很感谢 我改成GBK了。
      

  15.   


    恩 呵呵。。回去了 太谢谢了 
    话说这是我们头儿写的代码,他都不知道SJIS是日文字符集不过我们的项目是给国外做的,应该也都是英文。只不过要先拿到联通去测试一下,里面就有=中文了。