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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 净火红白 初级黑马   /  2018-8-11 18:51  /  863 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 净火红白 于 2018-8-11 19:08 编辑

一、超类
字节流:InputStream,OutputStream
字符流:Reader ,Writer

二、文件操作流:

字节流: FileInputStream,FileOutputStream
字符流:FileReader ,FileWriter
  //1.指定要读的文件目录及名称        File file =new File("文件路径");        //2.创建文件读入流对象
        FileInputStream fis =new FileInputStream(file);        //3.定义结束标志,可用字节数组读取
        int i =0 ;
        while((i = fis.read())!=-1){
             //i 就是从文件中读取的字节,读完后返回-1
        }
        fis.close();




        File file =new File("文件路径");            
        FileOutputStream fos =new FileOutputStream(file);     
        fos.write(要写出的字节或者字节数组);         
        fos.flush();
        fos.close();
三、缓冲流:
字节缓冲流: BufferedInputStream,BufferedOutputStream
字符缓冲流:BufferedReader ,BufferedWriter
缓冲流是对流的操作的功能的加强,提高了数据的读写效率。既然缓冲流是对流的功能和读写效率的加强和提高,所以在创建缓冲流的对象时应该要传入要加强的流对象。
//1.指定要读 的文件目录及名称
        File file =new File("文件路径");        //2.创建文件读入流对象
        FileInputStream fis =new FileInputStream(file);        //3.创建缓冲流对象加强fis功能
        BufferedInputStream bis =new BufferedInputStream(fis);         //4.定义结束标志,可用字节数组读取
        int i =0 ;
        while((i = bis.read())!=-1){             //i 就是从文件中读取的字节,读完后返回-1
        }
        bis.close();
        //1.指定要写到的文件目录及名称
        File file =new File("文件路径");        //2.创建文件读入流对象
        FileOutputStream fos =new FileOutputStream(file);        //3.创建缓冲流对象加强fos功能
        BufferedOutputStream bos=new BufferedOutputStream(fos);        //4.向流中写入数据
        bos.write(要写出的字节或者字节数组);        //5.刷新和关闭流
        bos.flush();        
        bos.close();     
    由上看出流的基本操作相同,流与文件的处理几乎是一样的只是将文件作为参数传入缓冲流的构造方法中。在BufferedReader中还提供了readLine()方法来读取一行文本前缀表示功能后缀表示流的类型。比如FileInputStream前缀File表示操作的是磁盘,后缀表示字节输入流。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马