java实现文件移动_java实现文件的复制,移动

本文介绍了Java如何实现文件和目录的复制与移动,详细解析了相关方法的使用,包括`fileMove`和`copyFileFromDir`等,并讨论了`File#renameTo(File)`在不同操作系统下的行为差异,强调在不同文件系统间移动文件可能需要使用其他策略来确保文件的正确移动。
摘要由CSDN通过智能技术生成

package test;

import java.io.File;//引入类

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

//实现文件的简单处理,复制和移动文件、目录等

public class TextCopyFileAndMove {

public static void fileMove(String from, String to) throws Exception {// 移动指定文件夹内的全部文件

try {

File dir = new File(from);

File[] files = dir.listFiles();// 将文件或文件夹放入文件集

if (files == null)// 判断文件集是否为空

return;

File moveDir = new File(to);// 创建目标目录

if (!moveDir.exists()) {// 判断目标目录是否存在

moveDir.mkdirs();// 不存在则创建

}

for (int i = 0; i < files.length; i++) {// 遍历文件集

if (files[i].isDirectory()) {// 如果是文件夹或目录,则递归调用fileMove方法,直到获得目录下的文件

fileMove(files[i].getPath(), to + "\\" + files[i].getName());// 递归移动文件

files[i].delete();// 删除文件所在原目录

}

File moveFile = new File(moveDir.getPath() + "\\"// 将文件目录放入移动后的目录

+ files[i].getName());

if (moveFile.exists()) {// 目标文件夹下存在的话,删除

moveFile.delete();

}

files[i].renameTo(moveFile);// 移动文件

System.out.println(files[i] + " 移动成功");

}

} catch (Exception e) {

throw e;

}

}

// 复制目录下的文件(不包括该目录)到指定目录,会连同子目录一起复制过去。

public static void copyFileFromDir(String toPath, String fromPath) {

File file = new File(fromPath);

createFile(toPath, false);// true:创建文件 false创建目录

if (file.isDirectory()) {// 如果是目录

copyFileToDir(toPath, listFile(file));

}

}

// 复制目录到指定目录,将目录以及目录下的文件和子目录全部复制到目标目录

public static void copyDir(String toPath, String fromPath) {

File targetFile = new File(toPath);// 创建文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值