IO复习知识点总结

IO概念

在java中IO是流
流分为两大类
输入流、输出流

从外界到程序是输入流
从程序到外界是输出流

按类型分为
字节输入流(InputStream)
字节输出流(OutputStream)
字符输入流(Reader)
字符输出流(Writer)

字节输入、输出流中用法

/**================字节输入输出流===================**/
		//字节输入流是接口指向文件输入流对象
		//获取文件输入流
		InputStream is = new FileInputStream(path);	
		//读取字节放
		is.read();//一个字节一个字节的读取
		byte[] by = new byte[1024];//1kb
		is.read(by);//获取指定数组的字节返回获取的长度
		is.close();
		
		//字节输出流
		//获取文件输出流
		OutputStream os = new FileOutputStream(path);
		//输出方法
		byte[] by2 = new byte[1024];
		os.write(by2);//输出指定字节数组
		os.close();
/**============输入流获取、输出流输出==============**/
		InputStream is = new FileInputStream(path);	
		OutputStream os = new FileOutputStream(path);
		int len = -1;
		byte[] by = new byte[1024];
		while((len = is.read(by)) != -1){
			os.write(by,0.len);//输出
		}
		is.close();
		os.close();

字符输入、输出流用法

/**=============字符输入输出流===========================**/	
		//字符输入流
		//获取字符输入流
		File f = new File(path);
		Reader r = new FileReader(f);
		//常用方法
		r.read();//读取一个字符
		char[] ch = new char[1024];
		r.read(ch);//通过char数组获取字符
		
		
		//字符输出流
		Writer w = new FileWriter(f);
		//常用方法
		w.write("");//写出字符串
		w.write(new char[1024]);//用char数组写出

字节数组输入、输出流用法

/**=============字节数组输入输出流========================**/
		
		//获取字节数组输入流
		byte[] arr = "字节数组输入流".getBytes();
		ByteArrayInputStream bis = new 	ByteArrayInputStream(arr);
		//常用方法
		bis.read(new byte[1024]);//通过数组读取
		
		ByteArrayOutputStream bos = new ByteArrayOutputStream();
		bos.toByteArray();//获取数据

字节缓冲输出、输出流(推荐使用)

/**=============字节缓冲流输入,输出========================**/
		BufferedInputStream b = new BufferedInputStream(new FileInputStream(new File("")));
		//常用方法
		b.read();
		
		BufferedOutputStream bo = new BufferedOutputStream(new FileOutputStream(new File("")));
		//常用方法
		bo.wait();
		bo.flush();

字符缓冲输入,输出流

BufferedReader br = new BufferedReader(new FileReader(new File("")));
		//常用方法
		br.readLine();//逐行读取
		
		BufferedWriter buw = new BufferedWriter(new FileWriter(new File("")));
		//常用方法
		buw.newLine();//换行

其他扩展流

		//都采用了设计模式中的装饰设计模式
		//对象输入输出流
		ObjectInputStream ois = null;
		ObjectOutputStream os = null;
		
		//数据输入输出
		DataInputStream dis = null;
		DataOutputStream dos = null;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值