java创建文件和目录

来源:互联网 发布:java抽象类的意义 编辑:程序博客网 时间:2024/05/07 17:41


File类的mkdir方法根据抽象路径创建目录
File类的mkdirs方法根据抽象路径创建目录,包括创建必需但不存在的父目录
File类的createTempFile方法创建临时文件,可以制定临时文件的文件名前缀、后缀及文件所在的目录,如果不指定目录,则存放在系统的临时文件夹下。
除mkdirs方法外,以上方法在创建文件和目录时,必须保证目标文件不存在,而且父目录存在,否则会创建失败
演示

packagebook.io;
importjava.io.File;
importjava.io.IOException;
publicclassCreateFileUtil{
publicstaticbooleancreateFile(StringdestFileName){
Filefile=newFile(destFileName);
if(file.exists()){
System.out.println("创建单个文件"+destFileName+"失败,目标文件已存在!");
returnfalse;
}
if(destFileName.endsWith(File.separator)){
System.out.println("创建单个文件"+destFileName+"失败,目标文件不能为目录!");
returnfalse;
}
//判断目标文件所在的目录是否存在
if(!file.getParentFile().exists()){
//如果目标文件所在的目录不存在,则创建父目录
System.out.println("目标文件所在目录不存在,准备创建它!");
if(!file.getParentFile().mkdirs()){
System.out.println("创建目标文件所在目录失败!");
returnfalse;
}
}
//创建目标文件
try{
if(file.createNewFile()){
System.out.println("创建单个文件"+destFileName+"成功!");
returntrue;
}else{
System.out.println("创建单个文件"+destFileName+"失败!");
returnfalse;
}
}catch(IOExceptione){
e.printStackTrace();
System.out.println("创建单个文件"+destFileName+"失败!"+e.getMessage());
returnfalse;
}
}

publicstaticbooleancreateDir(StringdestDirName){
Filedir=newFile(destDirName);
if(dir.exists()){
System.out.println("创建目录"+destDirName+"失败,目标目录已经存在");
returnfalse;
}
if(!destDirName.endsWith(File.separator)){
destDirName=destDirName+File.separator;
}
//创建目录
if(dir.mkdirs()){
System.out.println("创建目录"+destDirName+"成功!");
returntrue;
}else{
System.out.println("创建目录"+destDirName+"失败!");
returnfalse;
}
}

publicstaticStringcreateTempFile(Stringprefix,Stringsuffix,StringdirName){
FiletempFile=null;
if(dirName==null){
try{
//在默认文件夹下创建临时文件
tempFile=File.createTempFile(prefix,suffix);
//返回临时文件的路径
returntempFile.getCanonicalPath();
}catch(IOExceptione){
e.printStackTrace();
System.out.println("创建临时文件失败!"+e.getMessage());
returnnull;
}
}else{
Filedir=newFile(dirName);
//如果临时文件所在目录不存在,首先创建
if(!dir.exists()){
if(!CreateFileUtil.createDir(dirName)){
System.out.println("创建临时文件失败,不能创建临时文件所在的目录!");
returnnull;
}
}
try{
//在指定目录下创建临时文件
tempFile=File.createTempFile(prefix,suffix,dir);
returntempFile.getCanonicalPath();
}catch(IOExceptione){
e.printStackTrace();
System.out.println("创建临时文件失败!"+e.getMessage());
returnnull;
}
}
}
publicstaticvoidmain(String[]args){
//创建目录
StringdirName="D:/work/temp/temp0/temp1";
CreateFileUtil.createDir(dirName);
//创建文件
StringfileName=dirName+"/temp2/tempFile.txt";
CreateFileUtil.createFile(fileName);
//创建临时文件
Stringprefix="temp";
Stringsuffix=".txt";
for(inti=0;i<10;i++){
System.out.println("创建了临时文件:"
+CreateFileUtil.createTempFile(prefix,suffix,dirName));
}
//在默认目录下创建临时文件
for(inti=0;i<10;i++){
System.out.println("在默认目录下创建了临时文件:"
+CreateFileUtil.createTempFile(prefix,suffix,null));
}
}
}
输出结果:

创建目录D:/work/temp/temp0/temp1成功!
目标文件所在目录不存在,准备创建它!
创建单个文件D:/work/temp/temp0/temp1/temp2/tempFile.txt成功!
创建了临时文件:D:workempemp0emp1emp5171.txt
创建了临时文件:D:workempemp0emp1emp5172.txt
创建了临时文件:D:workempemp0emp1emp5173.txt
创建了临时文件:D:workempemp0emp1emp5174.txt
创建了临时文件:D:workempemp0emp1emp5175.txt
创建了临时文件:D:workempemp0emp1emp5176.txt
在默认目录下创建了临时文件:C:DocumentsandSettingsAdministratorLocalSettingsTempemp5181.txt
在默认目录下创建了临时文件:C:DocumentsandSettingsAdministratorLocalSettingsTempemp5182.txt
在默认目录下创建了临时文件:C:DocumentsandSettingsAdministratorLocalSettingsTempemp5183.txt
在默认目录下创建了临时文件:C:DocumentsandSettingsAdministratorLocalSettingsTempemp5184.txt
在默认目录下创建了临时文件:C:DocumentsandSettingsAdministratorLocalSettingsTempemp5185.txt
在默认目录下创建了临时文件:C:DocumentsandSettingsAdministratorLocalSettingsTempemp5186.txt
0 0
原创粉丝点击