1、InputStream和OutputStream都是以字节为单位的抽象流类,规定了字节流所有的输出和输入的基本操作。
InputStream:以字节为单位从数据源中读取数据,其继承层次结构大致如下:
public abstract int read ()throws IOException :从输入流中读取数据的下一个字节,返回读到的字节值,若遇到流的末尾,返回—1。
public int read (byte[] b) throws IOException:从输入流中读取B.length个字节的数据并存储到缓冲区b中,返回的是实际读到的字节数
public int read (byte[] b,int off ,int len )throws IOException:读取len个字节的数据,并从数组b的off位置开始写入到这个数组中
public void close() throws IOExceptiom:关闭此输入流并释放所有系统资源
public int available() IOException:返回此输入流的下一个方法调用可以不受阻塞地从此输入读取的估计字节数
public skip(long n) throws IOException:跳过河丢弃此输入流中数据的n个字节,返回的是字节数
2、outputStream常用方法介绍:
public abstract void write(int b)throws IOException:将制定的字节写入此输出流
public void write(byte[] b)throws IOException:将b.length个字节从指定的byte数组写入此输出流
public void write(byte[] b,int off,int len)throws IOException:将指定byte数组中从off开始的len个字节写入此输出流
public void flush() throws IOException:刷新此输出流,并强制写出所有缓冲的输出字节
public void close ()throws IOExceptoin:关闭此输出流,并释放与此输出流有关的所有系统资源
第二节、下面介绍字符输出流,用法的差别不大,只是针对的操作类型不同而已,大家可以对比记忆**********************
reader 和writer 都是以字符为操作对象的流类。
1、Reader 常用方法介绍:
public int read ()throws IOException:读取单个字符,返回作为整数读取的字符,如果已达到流的末尾则返回-1
public int read(char[] abcd)throws IOException:将字符读入数组,返回读取的字符数
public abstract int read (char[] abcd,int off,int len)throws IOExcrption:读取len 个字符的数据,并从数组ancd的off 位置开始写入到
这个数组中
public abstract void close()throws IOException:关闭该流并释放与之并联的所有系统资源
public long skip(long n)throws IOException:跳过n个字符
2、write常用方法介绍。
Public void write(int c)throws IOException:写入单个字符
public void write (char[] abcd)throws IOException:写入字符数组
public abstract void write(char[]abcd,int off,int len)throws IOException:写入字符数组的某一部分
public void write(String str)throws IOExcrption:写入字符串
public void write(String str,int off ,int len)throws IOException:写入字符串的某一部分
public abstract void close ()throws IOException:关闭此流,但是先刷新它
public abstract void flush()throws IOException:刷新该流的缓冲,将缓冲的数据全部写到目的地