JAVA中InputStream/OutputStream和Reader/Writer概念

学习目标:

  • 掌握 JAVA中InputStream/OutputStream和Reader/Writer概念

学习内容:

InputStream 对应 Reader
OutputStream 对应 Writer
输入 对应 读操作
输出 对应 写操作

这一切的概念都是内存相对文件的概念。
如果数据的流向是内存->文件,那对应的就是OutputStream或者Writer操作。
如果数据的流向是文件->内存,那对应的就是InputStream或者Reader操作。


代码展示:

package com.it;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

public class ObjectInputStreamDemo {
    
    
	public static void main(String[] args) {
    
    
		String s = "Hello World";// 定义一个字符串
		byte[] b = {
    
     'e', 'x', 'a', 'm', 'p', 'l', 'e' };// 定义一个字符数组
		try {
    
    
			// 创建一个新文件和一个输出流
			FileOutputStream out = new FileOutputStream("test.txt");
			ObjectOutputStream oout = new ObjectOutputStream(out);

			// 在文件里面写点东西
			oout.writeObject(s);
			oout.writeObject(b);
			oout.flush();
			
			// 为我们之前创建的文件创建一个输入流。
			ObjectInputStream ois = new ObjectInputStream(new FileInputStream("test.txt"));

			// 读取并打印对象,并将其转换为字符串。
			System.out.println("" + (String) ois.readObject());// 输出“Hello World”

			// 读取并打印对象,并将其转换为字符串。
			byte[] read = (byte[]) ois.readObject();
			String s2 = new String(read);
			System.out.println("" + s2);// 输出“example”

		} catch (Exception ex) {
    
    
			ex.printStackTrace();
		}
	}
}

代码已经很清楚的展示了对象输入输出流的操作方式。

输出结果:
在这里插入图片描述


猜你喜欢

转载自blog.csdn.net/weixin_45345143/article/details/128651847