字节缓冲流 ( BufferedInputStream / BufferedOutputStream)
2024-10-08 01:47:59
package com.sxt.reader; import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; /*
* 字节缓冲流
* BufferedInputStream
* BufferedOutputStream
* 实现Copy文件操作
*/
public class TestBCopy {
public static void main(String[] args){
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try {
//输入流
bis = new BufferedInputStream(new FileInputStream("F:\\马士兵.zip"));
//输出流
bos = new BufferedOutputStream(new FileOutputStream("G:\\CopyDest.zip"));
//新建字节数组
byte[] b = new byte[1024];
//第一步:读取文件到程序
int len = 0;
while((len = bis.read(b)) != -1){//读取文件到数组 同时返回数据长度
System.out.println(len);
bos.write(b, 0, len);//第二步:再从程序读到文件 System.arraycopy
}
System.out.println("Copy操作完成!"); } catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
if(bis != null){//确定流打开再关闭
try {
bis.close();//关闭流
} catch (IOException e) {
e.printStackTrace();
}
}
if(bos != null){
try {
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
最新文章
- Module Zero之语言管理
- 正尝试在 OS 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样...
- Shell 之外 试试不操作 shell 来实现同样的效果
- Exploratory Software Testing
- 用java给html文件添加必要的控制html代码片
- ios变量的property属性设置和意义
- 【Java 之 JVM】Java内存结构概述
- Excel 删除所有错误公式
- Unity3D脚本使用:Random
- bison实例
- CF div2 D BFS
- DataRow和DataRowView的区别
- Linux管线命令 - cut,grep,sort,uniq,wc,tee,tr,col,join,paste,expand,split,xargs
- Oracle笔记----oracle数字类型number自增
- 运维监控-Zabbix Server 使用微信 WeChat 告警
- Javascript - ExtJs - Ext.form.Panel组件
- 获取键盘的ascii码
- 【three.js练习程序】动画效果,100个方块随机运动
- TCP是如何实现三次握手的?
- 转:Eclipse配色方案