io流的分类及分类下的使用

io流的分类及分类下的使用_第1张图片
字符流在转换汉字等方面比字节流强,而字节流转换图片视频,字符流做不了。

字符流复制本地文件
io流的分类及分类下的使用_第2张图片
io流的分类及分类下的使用_第3张图片
io流的分类及分类下的使用_第4张图片
分别使用字符流和字节流进行图片的复制
字符流

//创建字符输入流对象
		FileReader fr = new FileReader("java.jpg");
		
		//创建字符输流对象
		FileWriter fw = new FileWriter("d:\\java.jpg");
		
		//一次读写一个字符数组
		int len ;
		char[] chs =  new char[1024];
		while((len = fr.read(chs) )!= -1) {
			fw.write(chs, 0, len);
			fw.flush();
		}
		
		//刷新
		fw.close();
		fr.close();

结果
io流的分类及分类下的使用_第5张图片
字节流

FileInputStream fis = new FileInputStream("java.jpg");
		
		FileOutputStream fos = new FileOutputStream("d:\\java.jpg");
		
		int len;
		byte[] b = new byte[1024];
		while((len = fis.read(b))!= -1) {
			fos.write(b, 0, len);
			
			
		}
		
		fos.close();
		fis.close();	

结果
在这里插入图片描述
所以非常直接的说明了字节流可以复制图片等,而字符流不可以

字节流复制文本文件
直接上代码

FileInputStream fis = new FileInputStream("dd");
		
		FileOutputStream fos = new FileOutputStream("d:\\a\\dd");
		
//		一次读写一个字节
		int by;
		while((by = fis.read())!=-1) {
			fos.write(by);
		}
		
//		//一次读写一个字节数组
//		int len = 0;
//		byte[] b = new byte[1024];
//		while((fis.read(b))!=-1) {
//			fos.write(b, 0, len);
//			
//		}
		
		fos.close();
		fis.close();

运行结果
io流的分类及分类下的使用_第6张图片

你可能感兴趣的:((学习笔记)20,IO流)