首先创建字节输入流和字节输出流对象
//1:创建字节输入流对象,用于读取文件
FIS = new FileInputStream("D:\\file\\双枪白峻阳.MP4");
//2:创建字节输入流对象,用于存储文件,注意第二个参数,是否追加
FOS = new FileOutputStream("E:\\myWorld\\俊宠的双枪.MP4");
将输入输出流对象作用域覆盖到全局
//作用域覆盖到全局
FileInputStream FIS = null;
FileOutputStream FOS = null;
定义byte类型数组用于等下的read(byte[] aByte方法读取)
byte[] aByte = new byte[1024];
定义临时变量data用于存储读取的字节数组aByte长度;
int data ;
使用while循环从输入流读取一些字节数,并将他们存储到缓冲区data中,并且判断该字节是否读取完毕
在while循环中通过write(byte[] b,int off,int len)方法
从指定的字节数组写入len个字符,从偏移off开始输出到此输出流
while ((data = FIS.read(aByte))!=-1){
FOS.write(aByte,0,data);
}
提示复制文件成功 并抛出异常
System.out.println("成功");
关闭输入输出流对象
try {
if (FOS != null) {
FOS.close();
}
if (FIS != null) {
FIS.close();
}
}
以下是所有代码
//作用域覆盖到全局
FileInputStream FIS = null;
FileOutputStream FOS = null;
try {
//1:创建字节输入流对象,用于读取文件
FIS = new FileInputStream("D:\\file\\双枪白峻阳.MP4");
//2:创建字节输入流对象,用于存储文件,注意第二个参数,是否追加
FOS = new FileOutputStream("E:\\myWorld\\俊宠的双枪.MP4");
//3:定义byte类型数组用于等下的read(byte[] aByte)方法读取
byte[] aByte = new byte[1024];
//4:定义临时变量data用于存储读取的字节数组aByte长度;
int data ;
//5:使用while循环从输入流读取一些字节数,并将他们存储到缓冲区data中
while ((data = FIS.read(aByte))!=-1){
//6:通过write(byte[] b,int off,int len)方法
//从指定的字节数组写入len个字符,从偏移off开始输出到此输出流
FOS.write(aByte,0,data);
}
//7:提示复制文件成功
System.out.println("成功");
} catch (IOException e) {
e.printStackTrace();
} finally {
//8:关闭输入输出流对象
try {
if (FOS != null) {
FOS.close();
}
if (FIS != null) {
FIS.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
创建输入输出流对象时需抛出异常