文件夹操作



import java.io.File;

import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

public class DirWork {

private static File m_root; //记录要删除的路径

private static ArrayList m_dirs; //

/**

* 功能:删除文件夹方法

* @param dir 要删除的文件夹路径(java.io.File类型)

*/

public void deleteDirs(java.io.File dir) {

try {

m_root = dir;

m_dirs = new ArrayList();

if (!m_root.isDirectory()) { //判断输入的是否为路径

System.out.println(m_root.toString() + " 不是路径");

} else {

//输出m_dirs中记录的值

//for(int i=0 ; i<m_dirs.size() ; i++){

// System.out.println(((File)m_dirs.get(i)).toString());

//}

m_dirs.add(m_root);

this.visitAll(m_root); //获取指定路径下的所有文件已经文件夹(递归调用)

this.rootDelete(); //删除list中的所有文件(倒叙循环删除)

}

} catch (Exception ex) {

System.out.println("error in deleteDirs : " + ex.getMessage());

}

}

/**

* 功能:删除文件或文件夹

* 注意:使用倒叙删除,先删除文件,然后删除空文件夹

*/

private void rootDelete() {

try {

if (m_dirs != null) {

//使用倒叙循环删除(先删除文件,再删除文件夹)

for (int i = m_dirs.size() - 1; i >= 0; i--) {

File f = (File) m_dirs.remove(i); //获取之后删除list中的数据

//删除数据

if (!f.delete()) {

System.out.println("文件路径:" + f.toString() + " 不存在");

}

}

} else {

System.out.println("获取文件list列表(m_dirs)为空");

}

} catch (Exception ex) {

System.out.println("error in rootDelete : " + ex.getMessage());

}

}

/**

* 功能:获取所有文件和文件夹,存储在m_dirs中

* 注意:递归调用

* @param tempRoot 文件路径

*/

private void visitAll(File tempRoot) {

try {

//获取指定路径下的所有文件

File[] dirs = tempRoot.listFiles();

if (dirs != null) {

//将文件数组转换成List对象

List dirslist = Arrays.asList(dirs);

//将dirslist完全添加到m_dirs中

m_dirs.addAll(dirslist);

//递归调用

for (int i = 0; i < dirslist.size(); i++) {

this.visitAll((File) dirslist.get(i));

}

}

} catch (Exception ex) {

System.out.println("error in visitAll : " + ex.getMessage());

}

}

//==================================================================================\\



/**

* 创建一个文件夹

* @param photoId String

* photoId :文件夹的名字

*/

public void mkDir(String photoId){

File dirFile;

boolean bFile;

String disk = "E:\\photo\\jim\\";

try {

dirFile = new File(disk+photoId);

bFile = dirFile.exists();

if (bFile == true) {

System.out.println(photoId+"文件夹存在");

} else {

bFile = dirFile.mkdir();

if (bFile == true) {

System.out.println(photoId+"文件夹 创建成功");

}

}

} catch (Exception e) {

e.printStackTrace();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值