2022/1/12 北京 java IO流【2】 字节流InputStream和OutputSteam、缓冲流

 文本文件用字节流会出现乱码,因为一个汉字占3个字节。

使用字节流实现图片的复制(读入写出)

//指定要复制的图片和复制完成以后图片的路径
File srcFile =new File("爱情与友情.jpg");
File desstFile =new File("爱情与友情2.jpg");
//提供具体的流
FileInputStream fis=new FileInputStream(srcFile);
FileOutputStream fos=new FFileOutputStream(desstFile);

//图片复制的过程
byte[] buffer=new byte[5];
int len;
while((len=fis.read(buffer)!=-1)){
   fos.write(buffer,0,len);
}
fos.close();
fis.close();
}

缓冲流是为了提高文件的读写效率

先关闭外边缓冲的流,再关闭里边的节点流.但是在关闭外层流的同时,内层流也会自动的进行关闭。

//指定要复制的图片和复制完成以后图片的路径
File srcFile =new File("爱情与友情.jpg");
File desstFile =new File("爱情与友情2.jpg");
//提供具体的流
FileInputStream fis=new FileInputStream(srcFile);
FileOutputStream fos=new FFileOutputStream(desstFile);

//造缓冲流
BufferedInputStream bis=new BufferedInputStream(fis);
BufferedOutputStream bos=new BufferedOutputStream(fos);

//图片复制的过程
byte[] buffer=new byte[5];
int len;
while((len=bis.read(buffer)!=-1)){
   bos.write(buffer,0,len);
}
bos.close();
bis.close();
//fos.close();
//fis.close();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值