java io流学习总结

https://blog.csdn.net/qq_16605855/article/details/88570387
字节流
inputStream 和 outputStream

图片,音频,视频 等

InputStream is = new FileInputStream(file);
OutputStream is = new FileOutputStream (file);

字符流
reader 和 wirter

Reader reader = new FileReader(file);
Wirterwirter= new FileWirter(file);

高效字节流
BufferedInputStream 和 BufferedOutputStream

InputStream in = new BufferedInputStream(new FileInputStream(file));
OutputStream in = new BufferedOutputStream (new FileOutputStream (file));

高效字符流
BufferedReader 和 BufferedWriter

BufferedReader reader = new BufferedReader(new FileReader(file));
BufferedWriter writer = new BufferedWriter(new FileWriter(file));

转换流
字符流转化成字节流

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in, "utf-8"));
BufferedWriter write = new BufferedWriter(new OutputStreamWriter(System.out));

数据流
DataInputStream和DataOutputStream

public static void DataStream() throws IOException {
			//写入数据
			ByteArrayOutputStream baos = new ByteArrayOutputStream();
			DataOutputStream dos = new DataOutputStream(baos);
			//赋值
			try {
				dos.writeInt(1);
				dos.writeUTF("cth");
				dos.writeBoolean(true);
			} catch (IOException e) {
				e.printStackTrace();
			}
			byte[] datas = baos.toByteArray();
			//读取数据
			DataInputStream dis = new DataInputStream(new ByteArrayInputStream(datas));
			//拿值 按照赋值的顺序
			int id = dis.readInt();
			String name = dis.readUTF();
			boolean flag = dis.readBoolean();
			System.out.println(id+","+name+","+flag);
		}

对象流 (序列化和反序列化)

public static void ObjectStream() throws IOException {
			//写入数据
			ByteArrayOutputStream baos = new ByteArrayOutputStream();
			ObjectOutputStream dos = new ObjectOutputStream(baos);
			//赋值
			try {
				
				dos.writeObject("hello");
				User user = new User(1,"cth",true);
				dos.writeObject(user);
			} catch (IOException e) {
				e.printStackTrace();
			}
			byte[] datas = baos.toByteArray();
			//读取数据
			ObjectInputStream ois = new ObjectInputStream(new ByteArrayInputStream(datas));
			//拿值 按照赋值的顺序
			try {
				Object str = ois.readObject();
				Object user = ois.readObject();
				System.out.println(user);
			} catch (ClassNotFoundException e) {
				e.printStackTrace();
			}
		}

打印流
PrintWriter和PrintStream

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值