zoukankan      html  css  js  c++  java
  • java io 学习笔记(一) 字节流

    java中将数据读写抽象成流,像水流一样,从而可以方便地扩展。其中重要的几个类:

    ①抽象类InputStream, OutputStream,它们是原始抽象类。其中InputStream的方法包括read() 从流中读取数据; skip() 跳过一定的字节; available() 返回可用的字节数; mark() 标记一个位置; reset() 返回上一个标记位; marksupport() 是否支持标记复位; close() 关闭流。 其中read() 可以逐字节读,也可加入缓存数组从而更高效地读取。OutputStream的方法包括 write(), 参数类似于read(); flush() 刷空此流; close() 关闭流。

    ②FileInputStream FileOutputStream 它们用于读写顺序文件。 其中FileInputSteam 打开输入文件, 需要捕获一个FileNotFoundException。FileOutputSteam 打开只读文件时有IOException。

    ③随机访问文件类 RandomAccessFile ,它比较特殊,直接继承自Object类,并且实现了接口DataInput 和 DataOutput ,可以成组地读取字节。方法有Read[数据类型]() , Write[数据类型](), ReadLine(), SkipBytes), length,getFilePointer(),seek等。

    ④过滤字节流。FilterInput/OutputStream, 可以对其他缓冲流数据流进行处理。

    一类是带缓冲的:BufferedInput/OutputStream, 可以把任意IO流捆绑在其上,提高效率;

    另一类是数据过滤:DataInputStream ,它是顺序的数据流。

    ⑤管道流,必须输入和输出并用,作用是在两个线程之间实现数据传输。

    顺序是 管道输出流 ---> 管道pipe ---> 管道输入流

    连接方法两种:1 PipedInputStream(PipedOutputStream pos) 或反过来,io其中一个连接了即可。

           2 connect(PipedOutputStream pos)

    ⑥内存读写流,ByteArrayInputStream ByteArrayOutputStream

    ⑦序列输入流 将几个输入流顺序连接在一起

  • 相关阅读:
    hdu 1260 Tickets
    hdu 4738 Caocao's Bridges(桥的最小权值+去重)
    找规律
    C语言快速排序
    数组的初始化方法
    C语言选择排序
    副本机制
    安装完Kali的后续操作
    Bool盲注
    Python中的列表
  • 原文地址:https://www.cnblogs.com/jason31/p/9632805.html
Copyright © 2011-2022 走看看