黑马程序员技术交流社区

标题: InputStreamReader [打印本页]

作者: yogaa    时间: 2014-6-8 15:22
标题: InputStreamReader
本帖最后由 yogaa 于 2014-6-8 15:25 编辑

我想看看我读取文件里的内容是什么,明明是汉字,但是为什么输出的是乱码,都已经做了编码转换了,求大神帮忙~代码如下:
public class IoTextAndCount {
        public static void main(String[] args) throws IOException{
                File f = new File("C:\\Users\\Administrator\\Desktop\\ds.txt");
                FileInputStream fs = new FileInputStream(f);
                InputStreamReader isr = new InputStreamReader(fs,"UTF-8");
                BufferedReader br = new BufferedReader(isr);
                String s;
                StringBuffer sb = new StringBuffer();
                while((s=br.readLine()) != null){
                        sb.append(s);
                        System.out.println(sb);                               
                }
        }
}






作者: 提菩--空    时间: 2014-6-8 15:42
本帖最后由 提菩--空 于 2014-6-8 15:44 编辑

跟你IDE编辑器的默认编码起冲突了,有可能你的编辑器用的是GBK编码,这样就会出现乱码。把IDE编辑器也更改成UTF-8就好了。你的编辑器用的什么?另外MyEclipse默认的编码是GBK,我的把你程序中的UTF-8改成GBK,运行出来的不是乱码
作者: yogaa    时间: 2014-6-8 16:02
提菩--空 发表于 2014-6-8 15:42
跟你IDE编辑器的默认编码起冲突了,有可能你的编辑器用的是GBK编码,这样就会出现乱码。把IDE编辑器也更改 ...

晕了~果然是,好像是两个编码方式不相同造成的,我改成一样的就好了,谢谢啊~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2