JavaSE-IO流/10.IO流之内存操作流
玉骨西风,恨最恨、闲却新凉时节。
——周密《玉京秋》
## IO流之内存操作流1. 内存操作流概述
如果我们在操作流的时候,不想让流输出到文件中,但是又需要对流进行操作,就可以使用内存流来实现输入与输出。针对于内存流,
java.io 包里面提供了两组操作:
- 字节内存流:
ByteArrayInputStream、ByteArrayOutputStream- 字符内存流:
CharArrayReader、CharArrayWriter两者在操作上面就类似于
FileInputStream、FileOutputStream 与 FileReader 与 FileWriter。
2. 与基础流OutputStream/InputStream的区别
- 以文件操作为例:
输出(OutputStream):程序 → OutputStream → 文件;输入(InputStream):程序 ← InputStream ← 文件;- 以内存操作为例:
输出(ByteArrayInputStream):程序 → ByteArrayInputStream→ 内存;输入(ByteArrayOutputStream):程序 ← ByteArrayOutputStream← 内存;- 需要注意的 是程序是运行在内存上的。
3. 测试
将
str字符串通过ByteArrayInputStream读取到内存中,然后通过ByteArrayOutputStream将内存中的数据输出(也就是在程序中)。
1 | /** |