文件移动

本文提供了一个使用Java实现文件及文件夹移动的示例代码。通过递归方式处理目录及其内容,并利用`File.renameTo()`方法完成文件移动,同时保留源路径下的空文件夹。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package io;

import java.io.File;

/**
 * 问题描述: 移动文件  
 * 注意:  
 *  1 移动后原path下的文件夹将保留  
 *  2 但文件夹下的文件将不会再存在  
 *  3 若是目录则要递归调用该方法  
 *  4 核心是调用File中renameTo()方法  
 */
public class FileTest {  
    public static void main(String[] args) {  
        FileTest fileTest=new FileTest();  
        fileTest.moveFile("C:\\Users\\Admin\\Desktop\\bcp", "C:\\Users\\Admin\\Desktop\\temp");  
    }  
      
    public void moveFile(String fromPath,String toPath){  
        File fromFolder = new File(fromPath);  
        File [] fromFiles=fromFolder.listFiles();  
        if (fromFiles==null) {  
            return;  
        }  
        File toFolder=new File(toPath);  
        if (!toFolder.exists()) {  
            toFolder.mkdirs();  
        }  
        for (int i = 0; i < fromFiles.length; i++) {  
            File file = fromFiles[i];  
            if (file.isDirectory()) {  
                moveFile(file.getPath(),toPath+"\\"+file.getName());  
                //亦可删除  
                //file.delete();  
            }  
            if (file.isFile()) {  
                File toFile=new File(toFolder+"\\"+file.getName());  
                if (toFile.exists()) {  
                    //亦可删除  
                    //toFile.delete();  
                }  
                   //移动文件  
                file.renameTo(toFile);  
            }  
        }  
    }  
}  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值