字节流、字符流复制文件

字节流、字符流复制文件

注意:先读(FileInputStream)后写(FileOutputStream)

字节流复制文件代码:

复制代码
/* 字节流复制文件*/
public class CopyArr {
    public static void main(String[] args) {
        long s = System.currentTimeMillis();
        // 
        FileInputStream fis =null;
        FileOutputStream fos=null;
        try {
        fis = new FileInputStream("c:\\liu.mp4");
        fos = new FileOutputStream("d:\\liu.mp4");
        // 定义字节数组
        byte[] b = new byte[1024*10];
        // 读取操作
        int len = 0;
        while((len=fis.read(b))!=-1){
            fos.write(b,0,len);
        }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            try {
                if(fos!=null){
                    fos.close();
                }
            } catch (Exception e2) {
                throw new RuntimeException("释放资源失败");
            }finally{
                if(fis!=null){
                    try {
                        fis.close();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        throw new RuntimeException("释放资源失败");
                        
                    }
                }
            }
        }
        long e = System.currentTimeMillis();
        System.out.println(e-s);
    }
}
复制代码

字符流复制文件代码:

复制代码
/*字符流复制文件*/
public class Copy {
    public static void main(String[] args) {
        FileReader fileReader=null;
        FileWriter file=null;
        try {
            fileReader = new FileReader("C:\\1.txt");
            file = new FileWriter("d:\\1.txt");
            //定义字符数组
            char[] c = new char[1024]; 
            //读取操作
            int len = 0;
            while((len=fileReader.read(c))!=-1){
                file.write(c, 0, len);
                file.flush();
            }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            if(file!=null){
                try {
                    file.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    throw new RuntimeException("关闭失败");
                }finally{
                    if(fileReader!=null){
                        try {
                            fileReader.close();
                        } catch (IOException e) {
                            // TODO Auto-generated catch block
                            throw new RuntimeException("关闭失败");
                        }
                    }
                }
            }
        }
    }
}
复制代码

posted on 2019-04-10 09:28  崔超波  阅读(327)  评论(0编辑  收藏  举报

导航