zoukankan      html  css  js  c++  java
  • Java_IO流_抽象类

    .   概念

    流动,从一端流向另一端,源头与目的地

    以程序为中心,程序与 数组/文件/网络连接/数据库,

    .   io流分类

    1. 流向:输入流与输出流
    2. 数据 :字节楼:二进制,所有文件都可以操作,包括纯文本,doc,音频,视频

    字符流:文本文件,只能处理纯文本

    1. 功能:节点:包裹源头

    处理:增强功能,提供性能

    .   字符流与字节流与文件

      1.字节流

        输入流InputStream

        方法

    int

    available() 
              返回此输入流下一个方法调用可以不受阻塞地从此输入流读取(或跳过)的估计字节数。

     void

    close() 
              关闭此输入流并释放与该流关联的所有系统资源。

     void

    mark(int readlimit) 
              在此输入流中标记当前的位置。

     boolean

    markSupported() 
              测试此输入流是否支持 mark 和 reset 方法。

    abstract  int

    read() 
              从输入流中读取数据的下一个字节。

     int

    read(byte[] b) 
              从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b 中。

     int

    read(byte[] b, int off, int len) 
              将输入流中最多 len 个数据字节读入 byte 数组。

     void

    reset() 
              将此流重新定位到最后一次对此输入流调用 mark 方法时的位置。

     long

    skip(long n) 
              跳过和丢弃此输入流中数据的 n 个字节。

        输出流OutputStream 

     void

    close()
              关闭此输出流并释放与此流有关的所有系统资源。

     void

    flush()
              刷新此输出流并强制写出所有缓冲的输出字节。

     void

    write(byte[] b)
              将 b.length 个字节从指定的 byte 数组写入此输出流。

     void

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

    abstract  void

    write(int b)
              将指定的字节写入此输出流。

     

       2.字符流

        输入流Reader

    abstract  void close()
              关闭该流并释放与之关联的所有资源。
     void mark(int readAheadLimit)
              标记流中的当前位置。
     boolean markSupported()
              判断此流是否支持 mark() 操作。
     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)
              跳过字符。

        输出流Writer 

     Writer append(char c)
              将指定字符添加到此 writer。
     Writer append(CharSequence csq)
              将指定字符序列添加到此 writer。
     Writer append(CharSequence csq, int start, int end)
              将指定字符序列的子序列添加到此 writer.Appendable
    abstract  void close()
              关闭此流,但要先刷新它。
    abstract  void flush()
              刷新该流的缓冲。
     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)
              写入字符串的某一部分。

     

  • 相关阅读:
    Problem of saving images in WPF (RenderTargetBitmap)zz
    巴特沃斯(Butterworth)滤波器 (2)
    巴特沃斯(Butterworth)滤波器 (1)
    vs发布的程序不依赖运行时库msvcp100.dll
    [leetcode]Word Search @ Python
    [leetcode]Merge Sorted Array @ Python
    [leetcode]Set Matrix Zeroes @ Python
    [leetcode]Restore IP Addresses @ Python
    [leetcode]Interleaving String @ Python
    [leetcode]Distinct Subsequences @ Python
  • 原文地址:https://www.cnblogs.com/aihuadung/p/9375369.html
Copyright © 2011-2022 走看看