16.4内存操作流

内存操作流是以内存作为操作终端实现的IO数据处理,与文件操作不同的地方在于,内存流不会进行磁盘数据操作,Java中提供有两类内存操作流:

  • 字节内存操作流:ByteArrayOutputStream、ByteArrayInputStream
  • 字符内存操作流:CharArrayWriter、CharArrayReader

字节内存操作流
在这里插入图片描述
在这里插入图片描述
字符内存操作流
在这里插入图片描述
在这里插入图片描述
范例:利用内存流实现一个小写字母转大写字母的操作

package com.lxh.sixteenchapter;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class JavaIODemo417 {
       public static void main(String[] args) {
		String str="qwertyuiop";
		InputStream in=new ByteArrayInputStream(str.getBytes());  //数据保存在内存输入流
		OutputStream out=new ByteArrayOutputStream();
		int data=0;
		try {
			while((data=in.read())!=-1) {
				out.write(Character.toUpperCase(data));
			}
			System.out.println(out);
		} catch (IOException e) {
			e.printStackTrace();
		}finally {
			try {
				in.close();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}try {
				out.close();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
}

执行结果

QWERTYUIOP
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章