美文网首页
java IO流-常用流

java IO流-常用流

作者: BuddhaCoder | 来源:发表于2018-10-20 20:36 被阅读0次

根据java类之间的关系,整理出java常用IO流之间的UML类图


初学UML,如果有错的话请谅解,这里面只写了关键的方法。

字节输入流:InputStream类为所有自己输入流的父类
主要方法有三个:

int read()
从流里面读出一个字节。不推荐使用
int read(byte[] b)
将数据读入到字节数组中,并返回所读的字节数
inte read(byte[] b,int off,int len)
off 从哪里开始读
len读取多少
将输入流中最多len个数据字节读入字节数组

其他方法:
void close()
关闭流资源
int available()
返回不受阻塞地从此输入流读取的字节数
long skip(long n)
跳过和放弃此输入流中的n个数据字节,该方法有可能失效
boolean markSupported()
测试此输入流是否支持mark和reset方法
void mark(int n)
在此输入流中标记当前的位置
void reset()
将此流重新定位到对此输入流最后调用mark方法时的位置。

字节输出流:OutputStream是所有字节输出流的父类。
三个基本的write()方法:
void write(int n)
将指定的字节写入此输出流。
void write(byte[] b)
将b.length个字节从指定的字节数组写入此输出流
void write(byte[] b,int off,int len)
将指定字节数组中从偏移量off开始的len个字节写入此输出流

其他方法:
void close()
关闭此输出流并释放与此流有关的所有系统资源
void flush()
刷新此输出流并强制写出所有缓冲的输出字节

文件输入输出流:FileInputStream和FileOutputStream,要构造一个FileInputStream,所关联的文件必须存在并且可读。

FileInputStream fis = new FileInputStream("demo.java");

要构造一个FileOutputStream,而输出文件已经存在,则它将被覆盖

FileOutputStream fos = new FileInputStream("results.dat");

想要以追加的方式写,则需要一个额外的参数,如:

FileOutputStream outfile = new FileOutputStream("results.dat",true);

字符流:Reader和Writer所有字符流的父类型。
java技术使用Unicode来表示字符串和字符,而且提供16位版本的流,以便用类似的方法处理字符。如果构造了一个连接到流的Reader和Writer,转换规则会在使用缺省平台所定义的字节编码和Unicode之间切换。
桥梁流:InputStreamReader和OutputStreamWriter(字节流转换成字符流的转换器)
这两个类不是用于直接输入输出的,他是将字节流转换成字符流的桥转换器,并可以指定编解码方式。
逐行读写流:BufferedReader/BufferedWriter
以上两个都是过滤流,需要用其他的节点流来作为参数的构造对象。
BufferedReader的方法:readLine():String,当他的返回值是null时,就表示读取完毕了。要注意,在写入时要注意写换行符,否则会出现阻塞。
BufferedWriter的方法:newLine(),这个方法会写出一个换行符。
管道流:线程交互的时候使用
PipedInputStream/PipedOutputStream
传送输出流可以连接到传送输入流,以创建通信管道。传送输出流是管道的发送端。通常,数据由某个线程写入PipedOutputStream对象,并由其他线程从连接的PipedInputStream读取。

相关文章

  • java IO流-常用流

    根据java类之间的关系,整理出java常用IO流之间的UML类图 初学UML,如果有错的话请谅解,这里面只写了关...

  • JavaSE Day19 IO

    1. Java 中常用的 I/O 流常用类型在哪个包?常用类型有哪些? I/O 流的常用类型都在 java.io ...

  • Java之IO流详解

    title: Java之IO流详解tags: Java IO流categories: Java IO流 大多数应用...

  • Java基础笔记总结(13)-IO流(1)FileInputSt

    IO流 IO流通常用来处理设备之间的数据传输 Java对数据的操作是通过流的形式 Java用于操作的流的类都在IO...

  • Java基础之IO流

    ##Java基础之IO流IO流常用几个类的关系如下: 字节流 字节输入流FileInputStream 读取文件用...

  • IO流

    IO流的使用 今天咱们来说一下JAVA中最常用的数据处理的流 IO 流,说到IO啊,玩DOTA的小伙伴们就有声音...

  • Java-10 I/O流

    I/O流全称是Input/Output Stream,译为输入输出流 I/O流常用的类型都在java.io包中 类...

  • java IO流

    java IO流 java流操作的类和接口 java流类图结构 IO流的定义 流是一组有顺序的,有起点和终点的字节...

  • Java中的IO流

    Java中的IO流分类 输入IO流输入字节流(InputStream)处理流缓冲流(BufferedInputSt...

  • 05-Java中的IO与NIO面试题(15题)

    1、Java 中 IO 流? Java 中 IO 流分为几种?按照流的流向分,可以分为输入流和输出流;按照操作单元...

网友评论

      本文标题:java IO流-常用流

      本文链接:https://www.haomeiwen.com/subject/ovwmzftx.html