‘壹’ java中怎样根据文件的路径去判断该文件夹中是否存在该文件
1.File testFile = new File(testFilePath);
if(!testFile .exists()){
testFile.mkdirs();
System.out.println("测试文件夹不存在");
}
2.File testFile = new File(testFilePath);
if(!testFile .exists()){
testFile.createNewFile();
System.out.println("测试文件不存在");
}
java中File类自带一个检测方法exists可以判断文件或文件夹是否存在,一般与mkdirs方法(该方法相较于mkdir可以创建包括父级路径,推荐使用该方法)或者createNewFile方法合作使用。
1,如果路径不存在,就创建该路径
2,如果文件不存在,就新建该文件
‘贰’ Java判断文件夹是否存在,不存在就创建
用File类中的exists()方法判断是否存在;
用File类中的mkdirs创建文件目录;
java代码如下:
publicFilegetFile(Filefile){
//判断文件夹是否存在
if(!file.exists()){
//不存在,则创建文件夹
file.mkdirs();
}
returnfile;
}
注意:
1. 首先明确一点的是:test.txt文件可以和test文件夹同时存在同一目录下;test文件不能和test文件夹同时存在同一目录下。
原因是:
(1)win的文件和文件夹都是以节点形式存放,这就意味着相同的文件和文件名不能处在同一目录下,会命名冲突。
2. 基于以上原因,如果我想在d:创建一个test文件夹,但是d:下面有一个test文件,那么由于命名冲突,是不可能创建成功的。
所以,在创建之前,要通过file.exists()判断是否存在test命名的文件或者文件夹,如果返回true,是不能创建的;
(2)文件后缀名也算是文件名的一部分,即test.txt文件和test文件不是相同文件名的文件。
所以,在创建之前,要通过file.exists()判断是否存在test命名的文件或者文件夹,如果返回true,是不能创建的;
然后再通过file.isDirectory()来判断这是不是一个文件夹。
import java.io.File;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
File file = new File("d:\test_file.txt");
Main.judeFileExists(file);
File dir = new File("d:\test_dir");
Main.judeDirExists(dir);
}
// 判断文件是否存在
public static void judeFileExists(File file) {
if (file.exists()) {
System.out.println("file exists");
} else {
System.out.println("file not exists, create it ...");
try {
file.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
// 判断文件夹是否存在
public static void judeDirExists(File file) {
if (file.exists()) {
if (file.isDirectory()) {
System.out.println("dir exists");
} else {
System.out.println("the same name file exists, can not create dir");
}
} else {
System.out.println("dir not exists, create it ...");
file.mkdir();
}
}
}
‘叁’ java如何判断一个文件夹是否存在
1、首先在电脑端新建一个java项目,如图,命名为javaFileTest名称。
2、在蠢行src下新建一个包,然后在myfile下建立一个主类,名称友好FileTest.java。
3、然后在FileTest.java中写入好档铅操作代码,如下图代码所示。
4、接着进行运行测试,如下图所示。
5、这样就在java中可以判断一个文件夹是否存在,如图所示。
‘肆’ java判断文件夹存在否
public static void main(String[] args) throws Exception {
// 如果要写成你需要的方法, 可把subFolders和filename做为形参, 在打印处返回true或做其它操作
// 这里假设文件夹大小写不敏感
// 待检测的文件夹们
String[] subFolders = { "articles", "pictures", "tables" };
// 父目录悄樱袭
String filename = "c:\\Test";
File folder = new File(filename);
// 如果父目录不存在, 当然没必要检测它的颂答子文件了
if (!folder.exists()) {
System.out.println("c:\\test 不存在");
return;
}
// 遍历c:\\Test 下面所有的文件, 包括子文件夹
File[] files = folder.listFiles();
// 用来计数, 如果子文件夹都存在, 则它的最后值应该为 subFolders.length
int count = 0;
for (File f : files) {
// 如果不是文件夹, 则跳过
if (!f.isDirectory()) {
continue;
}
for (String str : subFolders) {
if (str.equalsIgnoreCase(f.getName())) {
count++;
System.out.println("有文件夹: "启兄 + str);
break;
}
}
}
//
if (count == subFolders.length) {
System.out.println("全有");
} else {
System.out.println("不全有" + count);
}
}
‘伍’ Java判断文件夹是否存在,不存在就创建
方法如下:
public static void judeDirExists(File file)
if (file.exists()) if (file.isDirectory())
System.out.println("dir exists"); }
else System.out.println("the same name file exists, can not create dir"); 粗肆 }41
else System.out.println("dir not exists, create it ..."); 、
file.mkdir();
‘陆’ Java判断文件夹是否存在,不存在就创建
用File类中的.exists()方法判断是否存在
mkdirs创建目录
createNewFile()创建文件
多看看API文档
boolean
exists()
测试此抽象路径名表示的文件或目录是否存在。
createNewFile()
当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。
boolean
mkdirs()
创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。
‘柒’ java我删除一个文件的时候如果文件删除成功了,还需要判断该文件所在的文件夹是否为空如果为空的话也要删
删除一个文件夹,从外边往里判断是否还有文件,循环删除这个文件夹,从里面删不知道了
‘捌’ java怎么获取文件夹中是否有文件
1、获取文件夹路径,然后得到该路径下所以文件
2、如果为空那么就是没有文件
Stringpath="E:/file/20170413";//路径
Filef=newFile(path);
if(!f.exists()){
System.out.println(path+"notexists");
return;
}
Filefa[]=f.listFiles();
for(inti=0;i<fa.length;i++){
Filefs=fa[i];
if(fs.isDirectory()){
System.out.println(fs.getName()+"[目录]");//文件夹名
}else{
System.out.println(fs.getName());//文件名
}
}
fa.length=0的时候就是没有任何文件。
‘玖’ java 判断文件夹下是否有文件夹
Filef=newFile("d:/aaa");
if(f.isDirectory()){//判断是不是目录
File[]F1=f.listFiles();//获取目录下文件列表
for(Filef2:F1){//循环文件列表
if(f2.isDirectory()){//判断是不是目录
}else{//是文件
}
}
}
‘拾’ java我删除一个文件的时候如果文件删除成功了,还需要判断该文件所在的文件夹是否为空如果为空的话也要删
// 正向递归删除路径下的文件
public void delFile(String path){
File file = new File(path);
if(file.exists()&&file.isFile()){
file.delete();
}else if(file.exists()&&file.isDirectory()){
File[] files = file.listFiles();
if(files!=null){
for(File f:files){
if(f!=null){
delFile(f.getAbsolutePath());
}
}
}
}
}
// 逆向递归删除空目录
public void delEmptyPath(String path){
File file = new File(path);
if(file.exists()&&file.isDirectory()){
File[] files = file.listFiles();
if(files!=null&&files.length>0)
return;
if(file.delete()){
delEmptyPath(file.getParent());
}
}
}
// 把上面两个方法先后调用就能达到你的目的
public void delDirectories(String path){
File file = new File(path);
delFile(file.getAbsolutePath());
delEmptyPath(file.getParent());
}