你的位置:首页 > 软件开发 > Java > 黑马程序员系列第七篇 IO(1)

黑马程序员系列第七篇 IO(1)

发布时间:2015-11-17 23:00:19
ASP.Net+Android+IOS开发 、Net培训、期待与您交流! (前言:本篇文章主要依据毕向东老师的课程视频整理而成,如要详细学习,请观看毕老师视频 百度网盘链接地址:http://pan.baidu.com/s/1mgrkJWW)目录:1、字节流 基类 ...

ASP.Net+Android+IOS开发  、Net培训、期待与您交流!

 

(前言:本篇文章主要依据毕向东老师的课程视频整理而成,如要详细学习,请观看毕老师视频  百度网盘链接地址:http://pan.baidu.com/s/1mgrkJWW)

目录:1、字节流 基类InputStream\OutputStream    2、字符流 基类Reader\Writer   

      注意:由这四类派生出来的子类名称都是以其父类作为子类名的后缀。

 1、字节流 基类InputStream\OutputStream  

 

下图为字节流类体系结构图,红色部分为常用部分

黑马程序员系列第七篇  IO(1)

 

 

举几个典型例子来更好的了解如何应用

三种以字节流形式读取指定文件输出到控制台的方法(为简便起见,都被封装于各个函数中)

 1 //读取字节流,单个字符为单位进行 2 public static void readStream(String filename){ 3    4    FileInputStream fis=null; 5   try { 6     fis=new FileInputStream(filename); 7     //以read方法的还回值为条件,判断是否读取结束,遇到非char型的就鸡鸡了 8     int cha; 9     while((cha=fis.read())!=-1){10       System.out.println((char)cha);11     }12     System.out.println("逐字符方式读取文件内容已结束...");13   } catch (FileNotFoundException e) {14     e.printStackTrace();15   } catch (IOException e) {16     e.printStackTrace();17   }finally{try {18     if(fis!=null) 19       fis.close();//读取结束,判断若流已被创建,则关闭流资源20   } catch (IOException e) {21     e.printStackTrace();22   }23   }24 }25 //读取字节流,字符数组为单位进行,比较好用26 public static void readStream1(String filename){27   28     FileInputStream fis=null;29   try {30     fis=new FileInputStream(filename);31     //定义每次读取的字符数组大小32     byte[] cha=new byte[1024];33     int len=0;34     while((len=fis.read(cha))!=-1){35       System.out.println(new String(cha,0,len));36     }37     System.out.println("逐字符数组读取结束...");38   } catch (FileNotFoundException e) {39     e.printStackTrace();40   } catch (IOException e) {41     e.printStackTrace();42   }finally{try {43     if(fis!=null) 44       fis.close();//读取结束,判断若流已被创建,则关闭流资源45   } catch (IOException e) {46     e.printStackTrace();47   }48   }49 }50 51  //慎用,读取文件太大会出问题。52 public static void readStream2(String filename){53   54    FileInputStream fis=null;55   try {56     fis=new FileInputStream(filename);57     //定义每次读取的字符数组的大小为整个文件全部58     byte[] cha=new byte[fis.available()];59     fis.read(cha);60     System.out.println(new String(cha));61     System.out.println("整篇一次性读取结束...");62     63   } catch (FileNotFoundException e) {64     e.printStackTrace();65   } catch (IOException e) {66     e.printStackTrace();67   }finally{try {68     if(fis!=null)69       fis.close();70   } catch (IOException e) {71     e.printStackTrace();72   }73   }  74 }

原标题:黑马程序员系列第七篇 IO(1)

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录