IO 流基础

输入流和输出流相对于内存而言

下载文件时----》【硬盘1------》内存1----》内存2-----》硬盘2

一个字符两个字节

字节流:视频、声音、图片等二进制格式文件(比如word文件,有格式要求)

字符流:纯文本文件

各有各的优势:字节流是万能的,字符流读的比较快

Java语言中所有的字节流Stream结尾,字符流Writer(输出)或者Reader(输入)结尾

 

例子:字节流 文件的Copy


class  Copy1{
	public static void main(String[] args) throws Exception {
		
		//创建输入流 
		FileInputStream io1=new FileInputStream("E:/first.txt");
		
		//创建文件字节输出流   
		FileOutputStream io2=new FileOutputStream("E:/copyDanglog.txt"); 
		
		//一边读 ,一边写
		int temp=0;
		byte[] bt=new byte[1024]; //1kb
		while((temp=io1.read(bt))!=-1){
			io2.write(bt,0,temp);
		}
		
		//为保证数据完全写入硬盘,应该刷新一下
		io2.flush();
		//关闭流
		io1.close();
		io2.close();
	}
}

输入流的 read()方法

输出流的 write()方法

 

例子:字符流 文件的Copy



class Copy2{
	public static void main(String[] args) throws Exception {
		
		FileReader f=new FileReader("E:/Test4.java");
		FileWriter fw=new FileWriter("E:/China");

		//一次读1kb
		char[] ch=new char[514];
		//边读边写
		int temp=0;
		while((temp=f.read(ch))!=-1){
			//写
			fw.write(ch,0,temp);
		}
		//刷新
		fw.flush();
		//关闭
		f.close();
		fw.close();
	}
}

更加详细的操作请参见 链接:https://blog.csdn.net/MAGIC_JSS/article/details/51475923

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值