流--Stream

Posted 耍流氓的兔兔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了流--Stream相关的知识,希望对你有一定的参考价值。

IO流:
  处理设备之间的数据传输
  按照方向分:输入流,输出流(相对于内存)
  按照操作的数据分:字节流,字符流
  按照角色分:节点流,处理流

字节流:
  可以处理任何类型的数据,音频,视频,图片,文本
  编码:ASCII,ISO8859-1(欧洲编码),GBK,UTF-8

字符流:
  基于字节流,在字节流的基础上融入了编码
  专门处理文本的

节点流:
  向一个特定的IO设备读写数据的流
  程序直接连接到实际的程序源,和实际的输入输出节点连接

处理流:
  对一个已存在的流进行连接或封装,通过封装后的流来实现读写功能

字节流:
  以Stream结尾
  字节输入流父类:InputStream
  字节输出流父类:OutputStream

字符流:
  字符输入流父类:Reader
  字符输出流父类:Writer
  根据设备选取对应的子类

Writer:

  1 创建文件输出流对象,并绑定文件
    文件不存在会自动创建
    文件存在会被覆盖
  2 使用文件输出流对象项文件写入数据
    **write()
      此时没有写入到文件,写入到流中,流内部有一个字节数组,因为要查表
    **flush()把流中的数据刷到文件中
      刷完之后可以继续写入
  3 关闭输入流,同时会刷新流中的数据到文件中
    **close()

文件续写:
  **FileWriter(fileName, isAppend)//是否在fileName中追加数据

  **System.getProperty("line.separator");//获得系统换行的关键词

Reader:

  1 创建文件输入流对象,并绑定文件
    被读取的文件必须事先存在
  2 读取
    **read()读取单个字符
      一次读一个,返回字符编码
      读到文件末尾,返回-1
  3 关流

以上是关于流--Stream的主要内容,如果未能解决你的问题,请参考以下文章

Stream流

Stream流

读取 zip 文件时的文件流异常(如何使用块)

Dart 语言异步编程之Stream

错误:读取 .tiff 文件时“编解码器无法使用提供的流类型”

stream