首页 > 编程语言 > 详细

Java学习之IO流

时间:2019-12-31 15:43:07      阅读:83      评论:0      收藏:0      [点我收藏+]

IO(Input Output)流:IO流用来处理设备之间的数据传输

流按操作数据分为两种:字节流和字符流

流按流向分为:输入流、输出流

字节流的两个顶层父类:

1、InputStream

  方法:

    int available(); 
    void close();--关闭输入流并释放与流关联的所有系统资源
    void mark(int readLimit);--标记此输入流中的当前位置
    boolean markSupported();--测试输入流是否支持mark和reset方法
    static InputStream nullInputStream()

    abstract int read();--从输入流中读取下一个数据字节
    int read(byte[] b);--从输入流中读取一定数量的字节,并将其存储到缓冲区数组b中
    int read(byte[],int off,int len);--len从输入流中读取多达字节的数据到字节数组中。
  
    byte[] readAllBytes(); --从输入流中读取所有剩余的字节。
    int readNBytes(byte[] b,int off,int len); --从输入流中将请求的字节数读取到给定的字节数组中。
    byte[] readNBytes(int len); --从输入流中读取指定数量的字节。
    void reset(); --将此流重新定位到mark在此输入流上最后一次调用该方法的位置 。
    long skip(long n);--跳过并丢弃n此输入流中的数据字节。
    void skipNBytes(long n);--跳过并完全丢弃n此输入流中的数据字节。
    long transferTo(OutputStream out);--从此输入流中读取所有字节,然后按读取顺序将字节写入给定的输出流。

2、OutPutStream

  方法:

    void close(); --关闭此输出流并释放与此流关联的所有系统资源。
    void flush(); --刷新此输出流,并强制写出所有缓冲的输出字节。
    static OutputStream nullOutputStream();


    void write(byte[] b);--将b.length指定字节数组中的字节写入此输出流。
    void write(byte[] b,int off,int len); --将len指定字节数组中从偏移量开始的字节写入off此输出流。
    abstract void write(int b); --将指定的字节写入此输出流。

字符流的两个顶层父类

 1、Reader

  方法:

    abstract void close();--关闭流并释放与其关联的所有系统资源。
    void mark?(int readAheadLimit);--标记流中的当前位置。
    boolean markSupported();--此流是否支持mark()操作。
    static Reader nullReader();--返回Reader不读取任何字符的新字符。
  
    int read();--读取单个字符。
    int read?(char[] cbuf);--将字符读入数组。
    abstract int read?(char[] cbuf, int off, int len);--将字符读入数组的一部分。
    int read?(CharBuffer target);--尝试将字符读入指定的字符缓冲区。
  
    boolean ready();--此流是否已准备好被读取。
    void reset();--重置流。
    long skip?(long n);--跳过字符。
    long transferTo?(Writer out);--从该读取器读取所有字符,并按照读取顺序将这些字符写入给定的写入器。

2、Writer

  方法:

    Writer append?(char c);--将指定字符追加到此编写器。
    Writer append?(CharSequence csq);--将指定的字符序列附加到此编写器。
    Writer append?(CharSequence csq, int start, int end);--将指定字符序列的子序列追加到此编写器。
  
    abstract void close();--关闭流,先冲洗。
    abstract void flush();--冲洗流。(抽象方法需要子类实现)
  
    static Writer nullWriter();--返回一个Writer丢弃所有字符的新字符。
  
    void write?(char[] cbuf);--写一个字符数组。
    abstract void write?(char[] cbuf, int off, int len);--写入一部分字符数组。
    void write?(int c);--写一个字符。
    void write?(String str);--写一个字符串。
    void write?(String str, int off, int len);--写入字符串的一部分。

Java学习之IO流

原文:https://www.cnblogs.com/WarBlog/p/12124733.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!