ByteArrayInputStream
and ByteArrayOututStream
are in-memory implementations for use when you want to temporarily store the data in memory in a stream-like fashion, then pump it out again somewhere else.
For example, let's assume you have a method that expects an input stream as a parameter, eg
public Document parseXml(InputStream in) // build an XML document from data read in
but you want to send the contents of say a String to it. Then you'd use a ByteArrayInputStream
and fill it with the contents of your String and pass the ByteArrayInputStream
to the method.
An example of an ByteArrayOutputStream
usage might be if a method writes to an output stream, but you just want to capture the result and get it directly.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…