Java基础知识强化之IO流笔记58:内存操作流

时间:2023-12-21 18:58:26

1. 内存操作流:

用来操作处理临时存储的信息的。

(1)操作字节数组:

ByteArrayInputStream

ByteArrayOutputStream

代码示例:

 package cn.itcast_02;

 import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException; /*
* 内存操作流:用于处理临时存储信息的,程序结束,数据就从内存中消失。
* 字节数组:
* ByteArrayInputStream
* ByteArrayOutputStream
* 字符数组:
* CharArrayReader
* CharArrayWriter
* 字符串:
* StringReader
* StringWriter
*/
public class ByteArrayStreamDemo {
public static void main(String[] args) throws IOException {
// 写数据
// ByteArrayOutputStream()
ByteArrayOutputStream baos = new ByteArrayOutputStream(); // 写数据
for (int x = 0; x < 10; x++) {
baos.write(("hello" + x).getBytes());
} // 释放资源
// 通过查看源码我们知道这里什么都没做,所以根本需要close()
// baos.close(); // public byte[] toByteArray()
byte[] bys = baos.toByteArray(); // 读数据
// ByteArrayInputStream(byte[] buf)
ByteArrayInputStream bais = new ByteArrayInputStream(bys); int by = 0;
while ((by = bais.read()) != -1) {
System.out.print((char) by);
} // bais.close();
}
}

运行效果,如下:

Java基础知识强化之IO流笔记58:内存操作流

(2)操作字符数组

CharArrayReader

CharArrayWriter

(3)操作字符串

StringReader

StringWriter