2011年计算机二级考试JAVA知识点整理(43)

2014-11-01 12:30:08 · 作者: · 浏览: 59

  1.3.9 字符流 InputStreamReader/OutputStreamWriter


  上面的几种流的单位是 byte,所以叫做字节流,写入文件的都是二进制字节,我们无法直接看,下面要学习的是字节流


  Java采用 Unicode 字符集,每个字符和汉字都采用2个字节进行编码,ASCII 码是 Unicode 编码的自集


  InputStreamReader 是 字节流 到 字符桥的桥梁 ( byte->char 读取字节然后用特定字符集编码成字符)


  OutputStreamWriter是 字符流 到 字节流的桥梁 ( char->byte )


  他们是在字节流的基础上加了桥梁作用,所以构造他们时要先构造普通文件流


  我们常用的是:


  BufferedReader 方法:readLine()


  PrintWriter 方法:println()


  例子:


  import java.io.*;


  public class PrintWriterTest{


  public static void main(String args[]){


  PrintWriter pw=null;


  try{


  pw=new PrintWriter(


  new OutputStreamWriter(


  new FileOutputStream("bufferedwriter.txt")));


  pw.println("hello world");


  }catch(Exception e){


  e.printStackTrace();


  }finally{


  if(pw!=null)


  try{


  pw.close();


  }catch(Exception e){


  e.printStackTrace();


  }


  }


  }


  }


  import java.io.*;


  public class BufferedReaderTest{


  public static void main(String args[]){


  BufferedReader br=null;


  try{


  br=new BufferedReader(


  new InputStreamReader(


  new FileInputStream("bufferedwriter.txt")));


  System.out.println(br.readLine());


  }catch(Exception e){


  e.printStackTrace();


  }finally{


  if(br!=null)


  try{


  br.close();


  }catch(Exception e){


  e.printStackTrace();


  }


  }


  }


  }


  编辑推荐: