Java ByteArrayInputStream、SequenceInputStream、StringReader在何处使用

Java ByteArrayInputStream、SequenceInputStream、StringReader在何处使用,java,inputstream,outputstream,stringreader,bytearrayinputstream,Java,Inputstream,Outputstream,Stringreader,Bytearrayinputstream,java.io类太多了,对于其中的一些类,我真的不明白我们什么时候需要它们,例如: ByteArrayInputStream,ByteArrayOutputStream SequenceInputStream PushbackInputStream,PushbackReader StringReader 我指的是一些现实生活中的用法 有人能解释一下吗…我想说你的问题太宽了 但是,可以对其进行非常基本的概述。它包含用于数据输入和输出操作的接口和类,例如从文件中读取字节。只有很少的基本接口/类:

java.io类太多了,对于其中的一些类,我真的不明白我们什么时候需要它们,例如:

ByteArrayInputStream,ByteArrayOutputStream

SequenceInputStream

PushbackInputStream,PushbackReader

StringReader

我指的是一些现实生活中的用法


有人能解释一下吗…

我想说你的问题太宽了

但是,可以对其进行非常基本的概述。它包含用于数据输入和输出操作的接口和类,例如从文件中读取字节。只有很少的基本接口/类:

  • DataInput
    /
    ObjectInput
    -读取Java原语和对象
  • DataOutput
    /
    ObjectOutput
    -编写Java原语和对象
  • InputStream
    -读取单个字节
  • OutputStream
    -写入独立的拨号字节
  • 读取器
    -读取字符数据
  • Writer
    -写入字符数据
还有其他有用的接口(如
Closeable
),但它们的意义不大


最好阅读这些类的JavaDoc。一些例子:

  • 很明显,您会使用
    FileOutputStream
    将某些内容写入文件
  • 字符数据由字节表示(由字符编码定义),因此您可以使用
    OutputStreamWriter
    包装任何输出流
  • 您有
    byte[]
    并且希望从中读取,就像从
    InputStream
    读取一样?使用
    ByteArrayInputStream
  • 您希望能够将读取的字节返回给读取器(通常只支持一次传递)?用
    PushbackReader
    包装您的阅读器
  • 您有一些
    字符串
    ,希望从中读取,就像从
    阅读器
    读取一样?使用
    StringReader
  • 因此,如果您需要一些特定的流/读/写器,请检查
    java.io
    package,搜索internet并在需要时询问有关此的问题



    当然还有,你应该知道。但这是另一个话题。

    我想说你的问题太宽了

    但是,可以对其进行非常基本的概述。它包含用于数据输入和输出操作的接口和类,例如从文件中读取字节。只有很少的基本接口/类:

    • DataInput
      /
      ObjectInput
      -读取Java原语和对象
    • DataOutput
      /
      ObjectOutput
      -编写Java原语和对象
    • InputStream
      -读取单个字节
    • OutputStream
      -写入独立的拨号字节
    • 读取器
      -读取字符数据
    • Writer
      -写入字符数据
    还有其他有用的接口(如
    Closeable
    ),但它们的意义不大


    最好阅读这些类的JavaDoc。一些例子:

  • 很明显,您会使用
    FileOutputStream
    将某些内容写入文件
  • 字符数据由字节表示(由字符编码定义),因此您可以使用
    OutputStreamWriter
    包装任何输出流
  • 您有
    byte[]
    并且希望从中读取,就像从
    InputStream
    读取一样?使用
    ByteArrayInputStream
  • 您希望能够将读取的字节返回给读取器(通常只支持一次传递)?用
    PushbackReader
    包装您的阅读器
  • 您有一些
    字符串
    ,希望从中读取,就像从
    阅读器
    读取一样?使用
    StringReader
  • 因此,如果您需要一些特定的流/读/写器,请检查
    java.io
    package,搜索internet并在需要时询问有关此的问题



    当然还有,你应该知道。但这是另一个话题。

    我想说你的问题太宽了

    但是,可以对其进行非常基本的概述。它包含用于数据输入和输出操作的接口和类,例如从文件中读取字节。只有很少的基本接口/类:

    • DataInput
      /
      ObjectInput
      -读取Java原语和对象
    • DataOutput
      /
      ObjectOutput
      -编写Java原语和对象
    • InputStream
      -读取单个字节
    • OutputStream
      -写入独立的拨号字节
    • 读取器
      -读取字符数据
    • Writer
      -写入字符数据
    还有其他有用的接口(如
    Closeable
    ),但它们的意义不大


    最好阅读这些类的JavaDoc。一些例子:

  • 很明显,您会使用
    FileOutputStream
    将某些内容写入文件
  • 字符数据由字节表示(由字符编码定义),因此您可以使用
    OutputStreamWriter
    包装任何输出流
  • 您有
    byte[]
    并且希望从中读取,就像从
    InputStream
    读取一样?使用
    ByteArrayInputStream
  • 您希望能够将读取的字节返回给读取器(通常只支持一次传递)?用
    PushbackReader
    包装您的阅读器
  • 您有一些
    字符串
    ,希望从中读取,就像从
    阅读器
    读取一样?使用
    StringReader
  • 因此,如果您需要一些特定的流/读/写器,请检查
    java.io
    package,搜索internet并在需要时询问有关此的问题


    当然还有,你应该知道。但这是另一种情况