I/O dempo
标准读取写入
package io_stream;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class FilePwd {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		fileIn();
	}
	public static void fileIn() {
//		FileInputStream r = null;
//		FileOutputStream w = null;
		try (BufferedInputStream r = new BufferedInputStream(new FileInputStream("src/file/file02.txt"));
			BufferedOutputStream w =new BufferedOutputStream(new FileOutputStream("src/file/pwd.txt")))
		{
			byte[] bytes = new byte[20];// 定义每次读取字节数量
			int temp;
			while ((temp = r.read()) != -1) {// 判断是否读完
				System.out.println(temp);
				w.write(temp);// 写入文件
                                w.write(temp^77);// 文件加密,解密时异或相同的数字即可
				//System.out.println("写入成功");
			}
		}catch (FileNotFoundException e) {
				e.printStackTrace();
		}catch (IOException e) {
			e.printStackTrace();
		}
	}
}
.read()返回的是整数类型,.write()整数类型时,写入对应ascll码的字符,并且只能写入整数类型和char类型
字符流:每次读取一个字符FileReader fr = new FileReader("word.txt");
缓冲字符流:每次读取一行字符,
字符流不能用于非文本文件,如图片
结构图

包装类
- 包装字节流为字符流
 
InputStreamReader isr = new InputStreamReader(System.in); // 将标准字节输入流包装成字符输入流, system.in为标准字节输入流
InputStreamReader isr1 = new InputStreamReader(new FileInputStream("a")); // 将标准字节输入流包装成字符输入流
- 包装普通流为高效缓冲流
字节:BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("a"));
字符:BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 包装成缓冲字符输入流 
I/O dempo的更多相关文章
随机推荐
- Centos7 安装redis集群哨兵模式
			
https://blog.csdn.net/lihongtai/article/details/82826809
 - [UE4]瞬移
			
1.设置Input,事件名称设置为Teleport 2.设置事件Teleport 3.
 - 转载--无弹窗APT渗透实验
			
转载--无弹窗APT渗透实验 文章作者:亚信安全,转载自 FreeBuf.COM APT攻击方式花样繁多,我研究最近的流行的APT攻击方式,在本地搭建环境模拟一次简单的APT攻击,在模拟攻击过程中发现 ...
 - Group Pathfinding & Movement in RTS Style Games
			
转自:http://gamasutra.com/blogs/AndrewErridge/20180522/318413/Group_Pathfinding__Movement_in_RTS_Style ...
 - Core Graphices 设置渐变
			
Core Graphices 设置渐变 Quartz 提供了两种设置渐变的方式 CGShadingRef and CGGradientRef 尝试CGGradientRef 的使用 import & ...
 - android toolbar使用记录
			
1.打开Project structure,选择app modules,切换到Dependencies添加com.android.support.design.26.0.0.alpha1 2.在lay ...
 - pyqt5.0 GraphicsView框架
			
场景(The Scene) QGraphicsScene提供图形视图场景.该场景具有以下职责: 提供用于管理大量图元的快速界面(锅) 将事件传播到每个图元(把螃蟹烧熟了) 管理图元状态,例如选择和焦点 ...
 - 阿里云服务器 CentOS 安装Mysql 5.6
			
下载:https://dev.mysql.com/downloads/file/?id=471181 第一步: 安装mysql5姿势是要先安装带有可用的mysql5系列社区版资源的rpm包 [ro ...
 - jquery之过滤filter,not
			
<body> <h1>欢迎来到我的主页</h1> <p>我是唐老鸭</p> <p class="intro"> ...
 - Windows驱动开发调试工具
			
[开发工具] VS2012 [调试工具] Windbg:和VM配合实现双机联合调试,完成双机调试功能,可以结合<软件调试>这本书对Windbg有较为深入的认识. DebugView: 可以 ...