系列文章链接
1: Java–io流.
3: Java 字符流复制文本文件
4: Java FileInputStream读取文本文件
5: Java 缓冲流复制文件.
一.字节流
字节流是指传输过程中,传输数据的最基本单位是字节的流,一个不包含边界数据的连续流;字节流是由字节组成的,主要用在处理二进制数据
二.Java字节流操作文件
1.代码编写
下面展示一下 代码
。
public void fileStreamTest(){
// 1.实例化文件对象
File inFile = new File("风景.jpg");
File outFile = new File("风景1.jpg");
// 2.实例化输入输出流对象
FileInputStream inputStream = null;
FileOutputStream outputStream = null;
try {
inputStream = new FileInputStream(inFile);
outputStream = new FileOutputStream(outFile);
// 3.创建字节集对象
byte[] bytes = new byte[1024];
int len = 0;// 记录每次读取的字节个数
// 4.读取数据并写出
while (((len = inputStream.read(bytes)) != -1)){
outputStream.write(bytes);
}
} catch (IOException e) {
e.printStackTrace();
}finally {
// 5.输入输出流的关闭
try {
inputStream.close();
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
源文件图片
2.代码解析
其中
// 1.实例化文件对象
File inFile = new File("风景.jpg");
File outFile = new File("风景1.jpg");
// 2.实例化输入输出流对象
FileInputStream inputStream = null;
FileOutputStream outputStream = null;
inputStream = new FileInputStream(inFile);
outputStream = new FileOutputStream(outFile);
这些是实例化输入输出流的代码
当然可以简单点换成这样
inputStream = new FileInputStream("风景.jpg");
outputStream = new FileOutputStream("风景1.jpg");
bytes用来保存数据,len又来保存每次读取数据的长度
// 3.创建字节集对象
byte[] bytes = new byte[1024];
int len = 0;// 记录每次读取的字节个数
读取源文件的输入流并写出到输出流
// 4.读取数据并写出
while (((len = inputStream.read(bytes)) != -1)){
outputStream.write(bytes);
}
5.运行结果
结果