File类常用方法和枚举

新建一个file对象:

  File f = new File("F:\\01.JAVA基础300集\\05_常用类\\122.File类的使用.mp4");

  (文件路径也可以用"F:/01.JAVA基础300集/05_常用类/122.File类的使用.mp4",若文件不存在则新建一个文件)。

 

常用方法:

  将f文件重命名:f.renameTo(new File("122.File类.mp4"));

  file是否存在:f.exists();

  file是否在目录:f.isDirectory();

  file是否是文件:f.isFile()

  file最后修改时间:new Date(f.lastModified());

  file大小:+f.length());

  file的文件名:+f.getName());
  file的绝对目录:+f.getAbsolutePath());
  file的相对目录:+f.getPath());

 

mkdir方法:

  File f2 = new File("c/cc/ccc/cccc");

  boolean x = f2.mkdir();

  boolean y = f2.mkdirs();

若文件目录存在,则用mkdir方法,且x为true;若文件目录不存在则使用mkdirs 方法,会创建所有缺失目录,y = true。

 

 

 

枚举:定义一组常量时使用,每一个成员都相当于一个对象;不建议使用枚举的高级特性,否则不如用普通类

 

用法举例:

public static void main(String[] args) {
Season a = Season.SUMMER;
switch(a) {
case SPRING:
System.out.println("1");
break ;
case SUMMER:
System.out.println("2");
break ;
case AUTUMN:
System.out.println("3");
break ;
case WINTER:
System.out.println("4");
break ;
}
}

enum Season{
SPRING,SUMMER,AUTUMN,WINTER;
}

 

 

 

 

附录:递归打印目录树结构方法

import java.io.File;
import java.util.Scanner;

public class HomeworkFile {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入文件目录:");
String str = scanner.nextLine();

File a = new File(str);
printFile(a,0);
}


static void printFile(File file,int a) {

for (int i = 0; i < a; i++) {
System.out.print("-");
}
System.out.println(file.getName());//打印

if (file.isDirectory()) {
File[]files = file.listFiles();
for (int i = 0; i < files.length; i++) {
printFile(files[i],a+1);
}
}

}
}

posted @ 2019-09-20 01:38 Princess1 阅读(...) 评论(...) 编辑 收藏