• 字节流、字符流复制文件


    注意:先读(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("关闭失败");
                            }
                        }
                    }
                }
            }
        }
    }
  • 相关阅读:
    install_bugzilla
    R610 & R710 网卡问题
    总结开发者在合作过程中的典型交流方式
    vnc报错 font catalog is not properly configured
    eclipse插件安装
    extjs 点击链接到另一个页面 并激活另一个页面的指定tab
    centos c++ 找不到头文件mysql.h
    升级struts 2
    oracle 删除用户报错
    mysql 创建用户及授权
  • 原文地址:https://www.cnblogs.com/duguangming/p/10602843.html
Copyright © 2020-2023  润新知