javaAPI 高级特性 IO流 使用输入输出流写出复制粘贴视频

首先创建字节输入流和字节输出流对象

 //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();
            }
        }

创建输入输出流对象时需抛出异常

你可能感兴趣的:(java,开发语言,后端,架构)