`
xiangxm
  • 浏览: 64952 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
  • xiangxm: xurichusheng 写道一些涉及到密码保存的就需要加密/ ...
    3DES加密
  • xurichusheng: 一些涉及到密码保存的就需要加密/解密了。不需要解密的密码,如登 ...
    3DES加密

文件操作(delete files)

    博客分类:
  • Java
阅读更多
package com.evangelsoft.crosslink.jxnetworkselling.config.types;
import java.io.File;


/**
 * 删除文件和目录
 * 
 * @author ***
 * 
 */
public class DeleteFileUtil {

	/**
	 * 删除文件,可以是文件或文件夹
	 * 
	 * @param fileName
	 *            要删除的文件名
	 * @return 删除成功返回true,否则返回false
	 */
	public static boolean delete(String fileName) {
		File file = new File(fileName);
		if (!file.exists()) {
			//System.out.println("删除文件失败:" + fileName + "不存在!");
			return false;
		} else {
			if (file.isFile())
				return deleteFile(fileName);
			else
				return deleteDirectory(fileName);
		}
	}

	/**
	 * 删除单个文件
	 * 
	 * @param fileName
	 *            要删除的文件的文件名
	 * @return 单个文件删除成功返回true,否则返回false
	 */
	public static boolean deleteFile(String fileName) {
		File file = new File(fileName);
		// 如果文件路径所对应的文件存在,并且是一个文件,则直接删除
		if (file.exists() && file.isFile()) {
			if (file.delete()) {
				//System.out.println("删除单个文件" + fileName + "成功!");
				return true;
			} else {
				//System.out.println("删除单个文件" + fileName + "失败!");
				return false;
			}
		} else {
			//System.out.println("删除单个文件失败:" + fileName + "不存在!");
			return false;
		}
	}

	/**
	 * 删除目录及目录下的文件
	 * 
	 * @param dir
	 *            要删除的目录的文件路径
	 * @return 目录删除成功返回true,否则返回false
	 */
	public static boolean deleteDirectory(String dir) {
		// 如果dir不以文件分隔符结尾,自动添加文件分隔符
		if (!dir.endsWith(File.separator))
			dir = dir + File.separator;
		File dirFile = new File(dir);
		// 如果dir对应的文件不存在,或者不是一个目录,则退出
		if ((!dirFile.exists()) || (!dirFile.isDirectory())) {
			//System.out.println("删除目录失败:" + dir + "不存在!");
			return false;
		}
		boolean flag = true;
		// 删除文件夹中的所有文件包括子目录
		File[] files = dirFile.listFiles();
		for (int i = 0; i < files.length; i++) {
			// 删除子文件
			if (files[i].isFile()) {
				flag = DeleteFileUtil.deleteFile(files[i].getAbsolutePath());
				if (!flag)
					break;
			}
			// 删除子目录
			else if (files[i].isDirectory()) {
				flag = DeleteFileUtil.deleteDirectory(files[i]
						.getAbsolutePath());
				if (!flag)
					break;
			}
		}
		if (!flag) {
			//System.out.println("删除目录失败!");
			return false;
		}
		// 删除当前目录
		if (dirFile.delete()) {
			//System.out.println("删除目录" + dir + "成功!");
			return true;
		} else {
			return false;
		}
	}

	public static void main(String[] args) {
		// 删除单个文件
		String file = "c:/test/test0/test1/test2/testFile.txt";
		DeleteFileUtil.deleteFile(file);
		System.out.println();
		// 删除一个目录
		String dir = "c:/test/test0/test1";
		DeleteFileUtil.deleteDirectory(dir);
		System.out.println();
		// 删除文件
		dir = "c:/test/test0";
		DeleteFileUtil.delete(dir);

	}
}


分享到:
评论

相关推荐

    Delete Files.rar

    在软件UI界面上,可设置文件路径,需要删除的文件类型,文件需要保存的天数,以及自动删除时间(到达设定的时间点时,软件会自动执行文件删除操作)。另外软件支持开机自启动,并可自行选择是否需要开机自启动。附件...

    通过ftps操作文件

    版本是.net3.5加密FTP文件操作,利用FTPS实现文件上传,下载,删除操作。 string ftpIP = "";//FTP ip string ftpUSER = "";//FTP 用户名 string ftpPWD = "";//FTP 密码 --下载文件方法体 FTPSClient client = new...

    模拟文件系统 设计要求、设计思想、数据结构设计、实体关系图、数据流图、程序流程图、结果分析等

    模拟文件系统,操作系统课程设计的心血,含... Main functions : document creation, document writing, reading documents, documents, delete files, rename files, querying document attributes, Close document.

    update-files-action:用于更新文件的GitHub操作

    更新文件动作 用于更新文件的GitHub动作。... delete-branch : true commit.message : Update lock file 所有参数的用法 uses : branoholy/update-files-action with : token : ${{ secrets.GITHUB_

    按文件的修改时间范围来删文件AutoDel(支持通配符、子目录操作)

    AutoDel.exe files=C:\windows\*.log d1=-1000 d2=-7 DirFlag=yes 删除前7天至前1000天范围内的所有C:\windows\*.log文件(隐含、系统、只读的不删),包括c:\windows下所有子目录中*.log的都删。 AutoDel.exe 只...

    cmd操作命令和linux命令大全收集

    ftp ip 端口 用于上传文件至服务器或进行文件操作,默认端口为21。bin指用二进制方式传送(可执行文件进);默认为ASCII格式传送(文本文件时) route print 显示出IP路由,将主要显示网络地址Network addres,子网...

    iOS端沙盒文件浏览器,可以查看、拷贝、移动、删除等操作.zip

    The iOS sandbox file browser, which has view, copy, move, delete files and other operations. iOS端沙盒文件浏览器,可以查看、拷贝、移动、删除等操作.zip

    node-restafary:REST for CRUD文件操作

    餐厅 用于CRUD文件操作的REST 。它是什么? RE表象小号大老贸易交接是World Wide Web架构的抽象。 Çreate - [R EADùPDATE d elete是永久存储器4种的基本功能。安装npm i restafary --save 休息名称方法询问身体...

    restbox:drop在Dropbox上进行REST for CRUD文件操作

    休息箱 REST在dropbox上进行CRUD文件操作。它是什么? RE表象小号大老贸易交接是World Wide Web架构的抽象。 Çreate - [R EADùPDATE d elete是永久存储器4种的基本功能。安装npm i restbox 休息名称方法询问身体...

    如何编写批处理文件批处理文件批处理文件

    参数替代默认解析操作。这个带引号的字符串包括一个或多个 指定不同解析选项的关键字。这些关键字为: eol=c - 指一个行注释字符的结尾(就一个) skip=n - 指在文件开始时忽略的行数。 delims=xxx - 指分隔符集。这...

    文件管理实验报告.doc

    对文件的操作至少有以下几条命令 create:建文件 delete:删文件 open:打开文件 close:关闭文件 read:读文件 write:写文件 举例:主文件目录 mfd=record username :string[maxlen]; files :array[1..L] of ufd; ...

    中兴C300F420、F820、F822、9806H相关配置.pdf

    ZXA10 C300(1.2.0P1)基本操作 1.1.1 ZXA10 C300 基本操作 1) 进入全局配置模式 ZXAN#configure terminal ZXAN(config)# ...删除配置文件: ZXAN#delete cfg startrun.dat Are you sure to delete files?[yes/no]:y.

    文件系统代码

    delete openlist; openlist=new OPENLIST; /*-------保存到磁盘上myfiles--------*/ fp = fopen&#40;FilePath,"w+"&#41;; fwrite(BaseAddr,sizeof(char),DiskSize,fp); fclose(fp); printf("----------------...

    精通windows server 2008 命令行与powershell 电子书PDF单文件完整版

    6.4.2 openfiles——打开共享文件 310 6.4.3 pushd——存储当前目录 313 6.4.4 takeown——成为文件所有者 314 6.5 证书服务——Certre9 315 6.6 终端服务 318 6.6.1 change——终端服务更改 318 6.6.2 cmstp——...

    vbs_批量修改文件

    上面的操作只执行了处理文件的步骤 如果不需要提取运行结果,在 批处理 或主调vbs脚本里直接 运行该vbs文件就行了。 如果在bat 里调用该vbs脚本,并希望打印出提示信息 可以用下面的两种方法来实现: 1,在bat中加入...

    vss如何使用(图解)

    在对文件执行check out操作时,如果该文件还没有设置工作文件夹,系统会提示用户为文件创建或指定工作文件夹,用户可以根据系统的提示对文件进行工作文件夹的设置。 3.3.5修改和编辑文件 1) 在edit菜单中选中...

    visual source safe 教程

    在对文件执行check out操作时,如果该文件还没有设置工作文件夹,系统会提示用户为文件创建或指定工作文件夹,用户可以根据系统的提示对文件进行工作文件夹的设置。 3.3.5修改和编辑文件 1) 在edit菜单中选中...

    对python 各种删除文件失败的处理方式分享

    #shutil.rmtree(UPDATE_DIR_STR) #this maybe can't delete some files by error 5 os.system&#40;"rd/s/q 目录名"&#41; except Exception, e: pass print e 以上这篇对python 各种删除文件失败的处理方式分享...

    WIN7实验报告.doc

    移动和复制的方法: 方法1: 方法2: 方法3: 文件删除 Delete: shift+ Delete: 3、重命名文件和文件夹 方法1: 方法2: (四)文件、文件夹的高级搜索 1、搜索文件 (1)在C盘中搜索文件、文件夹名中第二个字母...

    IO输入输出留

    delete() 删除文件或“空目录” mkdir() 创建单层目录 mkdirs() 创建多层目录 renameTo() 改名、移动 *) 创建删除重命名方法返回 boolean,表示操作是否成功 File....

Global site tag (gtag.js) - Google Analytics