`
78425665
  • 浏览: 125405 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java中拷贝删除文件或目录,

    博客分类:
  • java
 
阅读更多
    // 复制文件
    public static void copyFile(File sourceFile, File targetFile) throws Exception {
        BufferedInputStream inBuff = null;
        BufferedOutputStream outBuff = null;
        try {
        	if(sourceFile.isDirectory()){
        		return;
        	}
            // 新建文件输入流并对它进行缓冲
            inBuff = new BufferedInputStream(new FileInputStream(sourceFile));
            
            if(!targetFile.exists()){
            	try{
            		targetFile.getParentFile().mkdirs();
            		targetFile.createNewFile();
            	}catch(Exception e){
            		System.out.println(targetFile.getAbsolutePath());
            		throw e;
            	}
            }
            // 新建文件输出流并对它进行缓冲
            outBuff = new BufferedOutputStream(new FileOutputStream(targetFile));

            // 缓冲数组
            byte[] b = new byte[256];
            int len;
            while ((len = inBuff.read(b)) != -1) {
                outBuff.write(b, 0, len);
            }
            // 刷新此缓冲的输出流
            outBuff.flush();
        } finally {
            // 关闭流
            if (inBuff != null)
                inBuff.close();
            if (outBuff != null)
                outBuff.close();
        }
    }
    /**
     * 
     * @param filepath
     * @throws IOException
     */
    public static void del(String filepath) throws IOException {
        File f = new File(filepath);// 定义文件路径
        if (f.exists() && f.isDirectory()) {// 判断是文件还是目录
            if (f.listFiles().length == 0) {// 若目录下没有文件则直接删除
                f.delete();
            } else {// 若有则把文件放进数组,并判断是否有下级目录
                File delFile[] = f.listFiles();
                int i = f.listFiles().length;
                for (int j = 0; j < i; j++) {
                    if (delFile[j].isDirectory()) {
                        del(delFile[j].getAbsolutePath());// 递归调用del方法并取得子目录路径
                    }
                    delFile[j].delete();// 删除文件
                }
            }
        }
    }
分享到:
评论

相关推荐

    java 递归拷贝文件显示进度demo

    例如,`File`类可以用来创建、读取、删除文件或目录。在递归拷贝过程中,我们需要使用`exists()`检查目标目录是否存在,`mkdirs()`创建多级目录,以及`listFiles()`获取目录下的所有文件和子目录。 3. **文件拷贝**...

    3、HDFS的使用(读写、上传、下载、遍历、查找文件、整个目录拷贝、只拷贝文件、列出文件夹下文件、删除文件及目录、获取文件及文件

    - **拷贝文件/目录**:调用`boolean rename(Path src, Path dst)`,实现文件或目录的重命名(相当于拷贝并删除源文件)。 - **获取文件属性**:使用`FileStatus getFileStatus(Path f)`获取文件或目录的元数据信息。...

    JAVA SFTP文件上传、下载及批量下载实例

    5. rename():重命名指定文件或目录 6. rm():删除指定文件 7. mkdir():创建目录 8. rmdir():删除目录 在使用JSch库时,我们需要了解它的基本使用方法。下面是一个简单的示例代码: ```java public class ...

    java自动copyU盘

    在Windows系统中,可能需要以管理员权限运行,而在Linux或MacOS中,可能需要修改文件或目录的权限设置。 总的来说,实现"java自动copyU盘"的功能涉及到Java的文件操作、设备监控、多线程编程以及可能的系统级API...

    FileUploadUtil.java(文件上传工具类)

    文件上传工具类,上传文件,上传导入文件到path文件夹下,判断图片大小是否...将存放在sourceFilePath目录下的源文件,打包成fileName名称的zip文件,并存放到zipFilePath路径下 ,拷贝指定文件到另一文件中,保存图片

    java文件夹的拷贝

    在Java编程中,文件夹的拷贝是一项常见的操作,尤其在处理数据迁移、备份或软件部署等场景。本文将深入探讨如何使用Java实现文件夹及其内容的完整拷贝。我们将基于给定的"java文件夹的拷贝"主题,以及提供的`...

    文件批量拷贝、重命名工具类 for java.zip

    在Java编程中,文件批量操作是一项常见的任务,包括文件的批量拷贝和重命名。这个"文件批量拷贝、重命名工具类 for java.zip"压缩包包含两个关键的Java源代码文件:Copy_File.java和RenameFile.java,它们分别用于...

    java管理hdfs文件和文件夹项目hadoop2.4

    6. **列举目录内容**:使用`listStatus()`方法列出目录中的所有文件和子目录。例如: ```java FileStatus[] statuses = fs.listStatus(dirPath); for (FileStatus status : statuses) { System.out.println...

    简单的文件拷贝 simpleFileCopy

    Java提供了丰富的File类,可以用来创建、删除、重命名文件或目录,以及获取文件属性等。例如,`new File("path")`用于创建File对象,`file.exists()`检查文件或目录是否存在,`file.isDirectory()`判断是否为目录,...

    MavenUtil 文件拷贝

    以上就是关于"MavenUtil 文件拷贝"的相关知识点,涵盖文件操作、Maven插件、依赖管理等多个方面,这些都是在Java开发中使用MavenUtil进行文件拷贝时可能遇到的核心技术。理解并熟练掌握这些知识点,能帮助开发者更...

    将源目录下文件同时拷贝到多个不同目录

    这样做的好处是灵活性高,添加、删除或修改目标目录只需要修改配置文件,无需改动程序代码。 在设计这样的程序时,我们需要注意以下几点: 1. **错误处理**:确保程序能够处理文件不存在、权限不足、磁盘空间不足...

    文件复制、显示及修改java代码

    在Java编程语言中,文件操作是一项基础且重要的任务,涵盖了文件的创建、读取、写入、复制、删除以及修改等多个方面。在这个“文件复制、显示及修改java代码”的示例中,我们将深入探讨如何使用Java来处理这些操作,...

    JAVA实现GUI文件管理器

    3、实现文件拷贝和文件夹拷贝(文件夹拷贝指深度拷贝,包括所有子目录和文件)。 4、实现指定文件的加密和解密。 5、实现指定文件和文件夹的压缩。 6、实现压缩文件的解压。 7、文件管理器具有图形界面。 建议使用...

    java共享文件(windows).rar

    首先需要引入jcifs库的依赖,然后使用`SmbFile`对象来代表共享文件或目录。例如,创建一个`SmbFile`实例,然后调用`openInputStream()`和`openOutputStream()`来读写文件,`mkdir()`创建目录,`delete()`删除文件。 ...

    java命令行文件管理器

    Java命令行文件管理器是一款基于Java编程语言开发的实用工具,专为用户在终端环境中提供高效、便捷的文件操作体验。这款程序集成了多种文件管理功能,如创建、删除、重命名、拷贝文件,浏览目录,以及压缩与解压缩、...

    模拟文件系统(java编写且支持磁盘分块和写回磁盘)

    这是一个用Java实现的一个虚拟文件系统,支持多用户使用,模拟了数据分块,实现了一些基本的文件目录操作,如创建目录,目录跳转,目录的重命名,复制拷贝,删除,以及文件的创建,编辑,重命名和删除,查看目录和...

    模拟文件系统(Java版)

    一个用Java实现的一个虚拟文件系统,支持多用户使用,模拟了数据分块,实现了一些基本的文件目录操作,如创建目录,目录跳转,目录的重命名,复制拷贝,删除,以及文件的创建,编辑,重命名和删除,查看目录和文件的...

Global site tag (gtag.js) - Google Analytics