InputStreamReader 出现乱码问题如何解决?

File file=new File("hello.txt");
if(file.exists()){
   System.out.println("exit");
   System.out.println();

   try {
      FileInputStream fileInputStream=new FileInputStream(file);
      InputStreamReader inputStreamReader=new InputStreamReader(fileInputStream, "GBK");
      BufferedReader bufferedReader=new BufferedReader(inputStreamReader);

      String line;
      while ((line=bufferedReader.readLine())!=null){
         System.out.println(line);
      }

      bufferedReader.close();
      inputStreamReader.close();
      fileInputStream.close();
   } catch (IOException e) {
      e.printStackTrace();
   }

}

FileInputStream :读取文件字节流

InputStreamReader:将字节流按照一定的编码格式转化为字符流:编码格式 一开始用的是“utf-8”  仍出现乱码  后来从网上知道改用“GB2312” 但是是部分乱码, 又试用“GBK”得到解决。看来还是自己多尝试。

BufferedReader:具有缓冲作用,可以一次读取一行或几个字符,也可自行控制

猜你喜欢

转载自blog.csdn.net/flyingshadower/article/details/82782346