A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yogaa 中级黑马   /  2014-6-8 15:22  /  1356 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 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);                               
                }
        }
}





2 个回复

倒序浏览
本帖最后由 提菩--空 于 2014-6-8 15:44 编辑

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

晕了~果然是,好像是两个编码方式不相同造成的,我改成一样的就好了,谢谢啊~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马