package Test;
import java.io.File;
import java.io.IOException;
import java.util.Date;
/**
* java.io.File类:代表文件和目录。在开发中,读取文件、生成文件、删除文件、修改文件的属性时经常会用到本类。
* File类的常见构造方法:public File(String pathname)
* 以pathname为路径创建File对象,如果pathname是相对路径,则默认的当前路径在系统属性user.dir中储存
* @author pmc
*
*/
public class FileTest {
public static void main(String[] args) throws IOException{
File f=new File("d:/a.txt");//File f=new File("d:\\a.txt");
System.out.println(f);
f.renameTo(new File("d:/bb.txt"));//修改文件名
System.out.println(System.getProperty("user.dir"));//当前项目路径
File f2=new File("c.txt");
f2.createNewFile();//创建文件
System.out.println(f2.getAbsolutePath());//绝对路径
System.out.println("File是否存在:"+f2.exists());
System.out.println("File是否是目录:"+f2.isDirectory());
System.out.println("File是否是文件:"+f2.isFile());
System.out.println("File最后修改时间:"+new Date(f2.lastModified()));
System.out.println("File的大小:"+f2.length());
System.out.println("File的文件名:"+f2.getName());
System.out.println("File的目录路径:"+f2.getPath());
File f3=new File("d:/电影/华语/大陆");
boolean flag=f3.mkdir();
flag=f3.mkdirs();
System.out.println(flag);
System.out.println("分割线*********************************");
File file=new File("d:/abc/b.txt");
boolean flags=file.exists();//是否存在
if(flags){
boolean flagss=file.delete();
if(flagss){
System.out.println("删除陈功");
}else{
System.out.println("删除失败");
}
}else{
boolean flagsc=true;
try{
File dir=file.getParentFile();
dir.mkdirs();
flagsc=file.createNewFile();
System.out.println("创建成功");
}catch(IOException e){
System.out.println("创建失败");
e.printStackTrace();
}
}
}
}
递归
package Test;
import java.io.File;
/**
* 递归遍历目录结构和树状展现
*
* @author pmc
*
*/
public class FileTest2 {
public static void main(String[] args) {
File f=new File("d:/QQtemp/IDM");
printFile(f,1);
}
static void printFile(File file,int level){
for(int i=0;i<level;i++){
System.out.print("-");
}
System.out.println(file.getName());
if(file.isDirectory()){
File[] files=file.listFiles();
for(File temp:files){
printFile(temp,level+1);
}
}
}
}
本文深入探讨了Java中File类的功能与使用方法,包括文件和目录的操作如创建、删除、重命名等,并通过实例展示了如何使用递归遍历目录结构。
2745

被折叠的 条评论
为什么被折叠?



