Java I/O流

1、Java 语言中I/O流分类:

     分为输入流(Input Stream) 和输出流(Output Stream)

     分为节点流(Node Stream) 和处理流(Processing Stream)

     分为字符流(Character Stream) 和字节流(Byte Stream)

 

     人站在程序的角度来看,如果数据从外界传入程序中,则为输入流,例如从键盘输入数据到程序中;如果数据从程序中传到外界,则为输出流,例如程序中的数据输出到显示器中,或者输出到文件中。

   

     Java语言中流是单向的,输入流只能读数据,输出流只能写数据。例外特例是:java.io.RandomAccessFile类,既可以从文件中读数据,也可以向文件中写数据。

 

     从数据流所关联的是数据源还是其他数据流,可以分为节点流和处理流,节点流直接关联到数据源,处理流封装已经存在的流。

 

     从传输数据的“颗粒大小”划分,字节流以字节为单位进行数据传输,字符流以字符为单位进行数据传输,在Java语言中,以InputStream或OutputStream结尾的类型为字节流,以Reader或Writer结尾的为字符流。

 

    

 

2、InputStream 字节输入流的父类 

     三个基本的read()方法

     int read()

     int read(byte[] buffer)

     int read(byte[] buffer,int offset,int length)

 

     其它方法

     void close()

     int available();

     skip(long n);

     boolean markSupportet()    //测试inputstream 的各种子类是否具备做标记的功能

     void mark(int readlimit);      //对输入流做标记

     void reset();        //跳转到标记处

    

3、OutputStream  字节输出流的父类

 

     三个基本的write()方法:

     void write(int c);

     void write(byte[] buffer);

     void write(byte[] buffer,int offset,int length);

 

     其它方法:

     void close();

     void flush();      //清空缓冲区

 

    

 

4、Reader  字符输入流的父类

     三个基本的read()方法

     int read()

     int read(byte[] cbuf)

     int read(byte[] cbuf,int offset,int length)

 

     其它方法

     void close()

     boolean ready();          //判断输入流是否准备就绪

     skip(long n);

     boolean markSupportet()    //测试inputstream 的各种子类是否具备做标记的功能

     void mark(int readlimit);      //对输入流做标记

     void reset();        //跳转到标记处

    

 

5、Writer  字符输出流的父类

 

     五个基本的write()方法:

     void write(int c);

     void write(char[] cbuf);

     void write(char[] cbuf,int offset,int length);

     void write(String string);

     void write(String string,int offset,int length);

 

     其它方法:

     void close();

     void flush();      //清空缓冲区

    

 

6、常用I/O流类型

      FileInputStream 和FileOutputStream

      FileInputStream用于读取本地文件中字节数据,FileOutputStream用于将字节数据写出到文件中

 

      //文件复制功能

      import

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值