文件读写流学习总结

一、概念的理解:

       数据流:是指一组有顺序的,有起点和终点的集合,是对输入和输出的总称。

       流又分为低级流和高级流。

      低级流:也叫做节点流,可以简单的理解为要读写的数据有明确的来源和去向的流。

      高级流:又叫过滤流、处理流。不能独立存在,必须要依托另一个流进行工作,使用高级流,往往是为了简化读写的工作。

      字节流:以字节为最小单位读写数据

      字符流:以字符为最小单位读写数据
      字节输入流的父类:InputStream
      字节输出流的父类:OutputStream
      这两个流是抽象的,是不能实例化的

二、常用的流及其作用

1. FileOutputStream:基本byte流,文件写出
    FileInputStream:基本byte流,文件读取功能
2. DateOutputStream:依赖基本输出byte流,扩展出基本类型读取
    DateInputStream:依赖基本输入byte流,扩展了基本类型写出方法    
3. BufferedOutputStream:
依赖于基本输出byte流,扩展出缓冲处理,提高io的性能
BufferedInputStream:
依赖于基本输入byte流,扩展出缓冲处理,提高io的性能
4.OutputStreamWriter:
依赖于基本输出byte流,扩展了文本编码处理
InputStreamReader
依赖基本输入byte流,扩展出文字解码处理
5 PrintWriter:
依赖一个字符输出流Writer,最终还是依赖于byte流(间接依赖)。扩展出println()按行写出
BufferReader:
依赖一个字符输入流Reader,最终还 是依赖于基本的byte输入流。扩展出readLine方法
6:ImageIO也是高级流,依赖于基本的byte流

三、使用范例



package paacticDemo;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class Demo04 {

	/**
	 * 从一个文件中读取信息,然后把所读取到的信息写入到另外一个文件中
	 * 
	 * @throws Exception
	 */
	public static void main(String[] args) throws Exception {
		// 基本byte流,可以读取功能
		FileInputStream fis = new FileInputStream("Hello.txt");
		byte[] bytes = new byte[100];
		int len = fis.read(bytes);
		// 缓冲流,可以提高文件的读写功能
		BufferedInputStream bis = new BufferedInputStream(fis);
		// 把从Hello.txt中的内容以utf-8编码的形式读取
		InputStreamReader isr = new InputStreamReader(bis, "utf-8");
		
		FileOutputStream fos = new FileOutputStream("world.txt");
		BufferedOutputStream bos = new BufferedOutputStream(fos);
		OutputStreamWriter osw = new OutputStreamWriter(bos, "utf-8");
		osw.write('好');
	}

}






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值