java,FileChannel实现文件复制到新的路径,较FileInputStream和FileOutputStream要快

 public void simpleSendToEp() {
        try {
            File folder = new File(path);//path为文件保存的路径
            for (File f : folder.listFiles()) {//通过listFiles()方法遍历路径下的文件
                s.copyfile(f, new File(savePath+"/"+f.getName()));//调用复制文件方法
                f.delete();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public void copyfile(File f, File cf) throws IOException {
        FileChannel ic = null;
        FileChannel oc = null;
        ic = new FileInputStream(f).getChannel();//f为已有文件对象
        oc = new FileOutputStream(cf).getChannel();//cf为复制到的文件对象
        oc.transferFrom(ic, 0, ic.size());
        ic.close();
        oc.close();
    }
实现目的,为了在发送文件后提供发送文件的备份,通过FileChannel实现文件的拷贝。

猜你喜欢

转载自blog.csdn.net/Soul_Programmer_Swh/article/details/81010962