1. 移动文件或者文件夹
/**
* 移动文件或者文件夹,如从e:/aa.txt到e:/tmp/aa.txt, 从e:/aa到e:/bb/aa
* @param input String
* @param output String
*/
public static void move(String input, String output){
File inputFile = new File(input);
File outputFile = new File(output);
try {
inputFile.renameTo(outputFile);
} catch (Exception ex) {
ex.printStackTrace();
}
}//move
2. 复制单个文件
/**
* 复制单个文件
* @param source
* @param dest
* @throws IOException
*/
public static void copyFile(String source, String dest)throws IOException{
final int BUFSIZE = 65536;
File f = new File(source);
File f2 = new File(dest);
if(!f.exists()){
return ;
}
if(!f2.exists()){
File parent = new File(f2.getParent()); //得到父文件夹
if(!parent.exists()){
parent.mkdirs();
}
f2.createNewFile();
}
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(f));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(dest));
byte[] buf = new byte[BUFSIZE];
while((bis.read(buf))!=-1){
bos.write(buf);
}
bos.close();
bis.close();
}
3. 复制文件夹及其子文件夹
/**
* 复制文件夹及其子文件夹
* @param source String 源文件夹,如: d:/tmp
* @param dest String 目标文件夹,如: e:/tmp
* @throws IOException
*/
public static void copyFolder(String source, String dest)throws IOException{
File f1 = new File(source);
File f2 = new File(dest);
if(!f1.exists()){
return ;
}
if((!f2.exists())&&(f1.isDirectory())){
f2.mkdirs();
}
String[] fileList = f1.list();
if(fileList == null){
return ;
}
for(String file:fileList){
String newSource = f1.getAbsolutePath() + File.separator + file;
String newDest = f2.getAbsolutePath() + File.separator + file;
if(new File(newSource).isDirectory()){
logger.info("正在复制文件夹从"+newSource+"到"+newDest+"。。。");
copyFolder(newSource, newDest);
}else{
logger.info("正在复制文件从"+newSource+"到"+newDest+"。。。");
copyFile(newSource, newDest);
}
}//for
}
4. 删除某个文件夹
/**
* 删除某个文件夹下的所有文件和所有子文件夹, 不包括它自己
* @param folder String
* @param delFolder boolean 是否连文件夹一起删除
* @throws IOException
*/
public static void deleteAllFiles(String folder, boolean delFolder)throws IOException {
File f1 = new File(folder);
if (!f1.exists()) {
return;
}
String[] fileList = f1.list();
if (fileList == null) { //空文件夹
if(delFolder){
logger.info("正在删除文件夹"+f1.getAbsolutePath()+"。。。");
f1.delete(); //删除文件夹
}
return;
}
for (String file : fileList) {
String newSource = f1.getAbsolutePath() + File.separator + file;
if (new File(newSource).isDirectory()) {
deleteAllFiles(newSource, delFolder);
if(delFolder){
logger.info("正在删除文件夹"+newSource+"。。。");
new File(newSource).delete(); //删除文件夹
}
} else {
logger.info("正在删除文件"+newSource+"。。。");
new File(newSource).delete();
}
}//for
}
/**
* 删除整个文件夹,包括它本身
* @param dir String
* @throws IOException
*/
public static void deleteFolder(String dir)throws IOException{
deleteAllFiles(dir, true);
File f = new File(dir);
logger.info("正在删除文件夹"+f.getAbsolutePath()+"...");
f.delete();
}
分享到:
相关推荐
Visual Basic 6.0 编写,API函数实现:复制、删除、移动一个文件夹下所有的文件和文件夹
这个类库是一个文件操作类,包括对文件和文件夹创建,复制,移动和删除
这个类库是一个文件操作类,包括对文件和文件夹创建,复制,移动和删除,有需要对文件操作学习的phper可以参考参考
PHP操作文件类(文件和文件夹创建,复制,移动和删除);挺好用,传上量分享
java 文件或文件夹 创建 删除 复制 移动 指定目录等
java操作文件及文件夹 移动、复制、删除文件及文件夹
用vc6.0做的可以实现文件夹的复制,移动,删除。并且有文件说明。...复制、移动、删除的文件夹下的所有文件包括子文件夹。 使用时注意在代码中修改所复制、移动、删除的文件夹路径,就可以使用了。
新建、删除、复制、移动文件
JavaFileOpUtil_源码+测试_文件操作:文件移动、文件/文件夹删除 源码复制后可直接运行。 需要文件(源码中已包含): 1.commons-lang-2.4.jar 2.Num62.java(提供62个字母和数字,含大小写) 新人,只求一个积分
文件文件夹的管理浏览查找移动复制删除新建文件.pptx
文件文件夹的管理浏览查找移动复制删除新建文件(2).pptx
此文件支持对文件及文件夹结构的多种操作,其中包括: 读取文本文件内容 遍历指定路径下指定后缀的所有文件 新建目录 多级目录创建 新建文件 有编码方式的文件创建 删除文件 删除文件夹 ...移动文件 移动目录
Android文件管理器(增加了文件夹复制移动,下载资源暂停删除等,以及复制过程中的可视化进程)是一个基于Android开发的应用,包含常用文件操作以及文件下载功能,文件操作包括打开文件夹和打开各类的文件(apk、avi...
掌握文件和文件夹的创建、复制、移动、重命名、属性设置、删除。熟悉回收站的操作。掌握库的基本操作。2.2实验内容“资源管理器”或“计算机”窗口的打开与关闭。文件与文件夹的浏览文件和文件夹的选定与撤消。文件...
要实现复制、移动、改名以及删除文件或文件夹,需要用到 shutil 模块,shutil 是 shell util 的简写形式,表示 shell 工具。 1 复制文件或文件夹 调用 shutil.copy(source, destination) 来实现复制文件或文件夹功能...
通过“解锁和删除”,“解锁和重命名”,“解锁和移动”以及“解锁和复制”,IObit Unlocker 提供了更轻松的方法来解锁和管理文件和文件夹,以确保其安全可用。 IObit Unlocker 更简单的管理文件的方法 一旦找到...
Mac电脑文件/文件夹管理,包括:移动,解压,复制,删除,压缩以及权限更改功能。可以压缩文件/文件夹进行加密,加密有两种,普通加密(字符串);MD5加密
JAVA 文件操作类和文件夹的操作代码实例,包括读取文本文件内容, 新建目录,多级目录创建,新建文件,有编码方式的文件创建, 删除文件,删除文件夹,删除指定文件夹下所有文件, 复制单个文件,复制整个文件夹的...
文件管理器项目,支持文件创建、文件夹创建,文件删除、移动、复制等功能,还有方便方式全选等.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
PHP文件及文件夹操作之创建、删除、移动、复制_.docx