首页 > 其他分享 >文件操作

文件操作

时间:2023-04-02 11:12:11浏览次数:36  
标签:文件 dirFile srcFile len static File 操作 new

    /**
     * 拷贝文件
     */
    public static void copyFile(File srcFile, File targetFile) throws IOException {
        FileInputStream inputStream = new FileInputStream(srcFile);
        FileOutputStream outputStream = new FileOutputStream(targetFile);
        BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(outputStream);

        byte[] bytes = new byte[1024];
        int len = 0;
        while ((len = inputStream.read(bytes)) != -1) {
            bufferedOutputStream.write(bytes, 0, len);
            bufferedOutputStream.flush();
        }
        bufferedOutputStream.close();
        inputStream.close();
        outputStream.close();
    }

    /**
     * 删除文件
     */
    public static void deleteFile(File srcFile) {
        srcFile.delete();
    }

    /**
     * 剪切文件
     */
    public static void cutFile(File srcFile, File targetFile) throws IOException {
        copyFile(srcFile, targetFile);
        deleteFile(srcFile);
    }
    /**
     * 压缩文件
     */
    public static void zipFiles(List<File> srcfile, File zipfile) {
        byte[] buf = new byte[1024];
        try {
            //ZipOutputStream类:完成文件或文件夹的压缩
            ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipfile));
            for (File file : srcfile) {
                FileInputStream in = new FileInputStream(file);
                out.putNextEntry(new ZipEntry(file.getName()));
                int len;
                while ((len = in.read(buf)) > 0) {
                    out.write(buf, 0, len);
                }
                out.closeEntry();
                in.close();
            }
            out.close();
            log.info("压缩完成.");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    /**
     * 删除文件夹
     */
    public static boolean deleteDir(File dirFile) {
        // 如果dir对应的文件不存在,则退出
        if (!dirFile.exists()) {
            return false;
        }

        if (dirFile.isFile()) {
            return dirFile.delete();
        } else {
            for (File file : dirFile.listFiles()) {
                deleteDir(file);
            }
        }

      return dirFile.delete();
  }

标签:文件,dirFile,srcFile,len,static,File,操作,new
From: https://www.cnblogs.com/tian0926/p/17280085.html

相关文章

  • clang操作源码
    生成注释假设有下面的源码:structVec3{floatx,y,z;};structVec4{floatx,y,z,w;};生成这样的代码://[[CLASSINFO]]class:Vec3,ispod:true,isaggregate:truestructVec3{floatx,y,z;};//[[CLASSINFO]]usestruct-bindingmethod://c......
  • 一篇关于异或操作的题解 (来源:杭电oj: find your present (2))
    害惭愧惭愧老长时间没写代码了——————————转回正题,对于杭电这个题先说我超时的错误想法—————————————————————————————————————————————————————————————— 一开始我的想法是开一个大小为100000......
  • Django笔记十三之select_for_update等选择和更新等相关操作
    本篇笔记将介绍update和create的一些其他用法,目录如下:get_or_createupdate_or_createselect_for_updatebulk_createbulk_update1、get_or_create前面我们介绍过get()和create()的用法,那么get_or_create()的意思很简单,就是获取或者创建,如果存在就返回,不存在就......
  • 事件的操作
        第一种方式: 第二种方式: ......
  • DOM元素的操作
           ......
  • DOM文本的操作
         ......
  • DOM属性的操作
         ......
  • 《30天自制操作系统笔记》---第一天
    第一天第一个实验:用二进制写一个显示helloworld的“操作系统”使用工具:1、HxD-二进制编辑器2、qumu模拟器下载了HxD–二进制编辑器编辑好了书上的二进制程序helloos0.img然后按照书上写了bat脚本。Install脚本:用来制作系统启动盘Run脚本,用来启动qumu模拟器运行。不过......
  • 将pdf文件以二进制形式拆分并且写入另一个pdf
    staticpublicvoidmain(String[]args){Filefile=newFile("C:\\ceshi2\\ceshi.pdf");Filefile2=newFile("C:\\ceshi2\\123.pdf");try{InputStreamInputStream=newFileInputStream(file);......
  • docker笔记-安装、操作和Registry
    注意事项强烈建议docker宿主机关闭firewalld,改用iptables1docker安装1.1离线安装下载Docker二进制文件(https://download.docker.com/linux/static/stable/x86_64/)tarzxfdocker-xxxx-ce.tgzcpdocker/*/usr/bin/dockerd&验证dockerinfo注册成服务vi/usr/l......