java删除文件和文件夹具体实现
2023-06-13 09:15:07 时间
1,验证传入路径是否为正确的路径名(Windows系统,其他系统未使用)
Java代码
复制代码代码如下:
Java代码
//验证字符串是否为正确路径名的正则表达式
privatestaticStringmatches="[A-Za-z]:\\\\[^:?\"><*]*";
//通过sPath.matches(matches)方法的返回值判断是否正确
//sPath为路径字符串
2,通用的文件夹或文件删除方法,直接调用此方法,即可实现删除文件夹或文件,包括文件夹下的所有文件
Java代码
/**
* 根据路径删除指定的目录或文件,无论存在与否
*@paramsPath 要删除的目录或文件
*@return删除成功返回true,否则返回false。
*/
publicbooleanDeleteFolder(StringsPath){
flag=false;
file=newFile(sPath);
//判断目录或文件是否存在
if(!file.exists()){ //不存在返回false
returnflag;
}else{
//判断是否为文件
if(file.isFile()){ //为文件时调用删除文件方法
returndeleteFile(sPath);
}else{ //为目录时调用删除目录方法
returndeleteDirectory(sPath);
}
}
}
3,实现删除文件的方法,
Java代码
/**
*删除单个文件
*@param sPath 被删除文件的文件名
*@return单个文件删除成功返回true,否则返回false
*/
publicbooleandeleteFile(StringsPath){
flag=false;
file=newFile(sPath);
//路径为文件且不为空则进行删除
if(file.isFile()&&file.exists()){
file.delete();
flag=true;
}
returnflag;
}
4,实现删除文件夹的方法,
Java代码
/**
*删除目录(文件夹)以及目录下的文件
*@param sPath被删除目录的文件路径
*@return 目录删除成功返回true,否则返回false
*/
publicbooleandeleteDirectory(StringsPath){
//如果sPath不以文件分隔符结尾,自动添加文件分隔符
if(!sPath.endsWith(File.separator)){
sPath=sPath+File.separator;
}
FiledirFile=newFile(sPath);
//如果dir对应的文件不存在,或者不是一个目录,则退出
if(!dirFile.exists()||!dirFile.isDirectory()){
returnfalse;
}
flag=true;
//删除文件夹下的所有文件(包括子目录)
File[]files=dirFile.listFiles();
for(inti=0;i<files.length;i++){
//删除子文件
if(files[i].isFile()){
flag=deleteFile(files[i].getAbsolutePath());
if(!flag)break;
}//删除子目录
else{
flag=deleteDirectory(files[i].getAbsolutePath());
if(!flag)break;
}
}
if(!flag)returnfalse;
//删除当前目录
if(dirFile.delete()){
returntrue;
}else{
returnfalse;
}
}
5,main()方法
Java代码
publicstaticvoidmain(String[]args){
HandleFileClasshfc=newHandleFileClass();
Stringpath="D:\\Abc\\123\\Ab1";
booleanresult=hfc.CreateFolder(path);
System.out.println(result);
path="D:\\Abc\\124";
result=hfc.DeleteFolder(path);
System.out.println(result);
}
main()方法只是做了一个简单的测试,建立文件夹和文件都是本地建立,情况考虑的应该很全面了,包括文件夹包含文件夹、文件。文件的不同情况…………
实现没有问题,可以正确删除文件夹和文件。
相关文章
- 在java中print和println_JAVA命令行参数
- java局域网发送文件_Java如何实现局域网文件传输代码案例分享
- import java.io 是什么意思_Java IO 详解
- Java class类文件和类加载器详解以及代码优化
- java中使用uuid函数_java生成随机数
- java+sm4+加密算法_SM4加密算法实现Java和C#相互加密解密
- maven java读取maven的pom.xml文件详解编程语言
- Java开发之文件上传详解编程语言
- Properties属性文件操作Java工具类详解编程语言
- Java实现MSSQL数据库连接(java连接mssql)
- Java File类(文件操作类)详解
- 数据库Java连接MySQL数据库实现数据添加(java添加mysql)
- Linux下编译Java文件,迎来新体验(linux编译java文件)
- Java和Redis的配合安装方法(java redis安装)
- Java搭配MySQL,实现创新跳跃的可能(java 与mysql)
- Linux下快速配置Java环境变量(linux设置java环境变量)
- Java实现与Oracle数据库的无缝整合(java整合oracle)
- Java使用jxl包写Excel文件适合列宽实现
- java使用ftp上传文件示例分享
- Java实现的文件过滤代码分享(按后辍过滤)