首页 > 技术文章 > File类和枚举

javatask 2017-05-01 17:19 原文

java.io.File类:文件和目录路径名的抽象表示形式

File类常见构造方法:

File(String pathname):通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。

常用方法:

canWrite():测试程序是否可以修改抽象路径名称的文件。

canRead():测试程序是否可以读取抽象路径名称的文件。

canExcute():测试程序是否可以执行抽象路径名称的文件。

compareTO(File pathname):按字母顺序比较两个抽象路径名称

createNewFile():如果不存在抽象路径名的文件就创建一个新文件

delete():删除抽象路径名的文件或目录

equals(Object obj):测试抽象路径名与给定的对象是否相同

exists():测试抽象路径名表示的文件或目录是否存在

getAbsoluteFile():返回抽象路径名的绝对路径

getName():得到文件名

getPath():将抽象路径返回一个路径名字符串isAbsolute() :测试此抽象路径名是否为绝对路径名。

isDirectory():测试此抽象路径名表示的文件是否是一个目录。

isFile():测试此抽象路径名表示的文件是否是一个标准文件。

isHidden():测试抽象路径名文件是否是一个隐藏文件

lastModified():返回此抽象路径名表示的文件最后一次被修改的时间
length():返回由此抽象路径名表示的文件的长度。 3

list(): 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。  
       

   

编写一个程序,在命令行中以树状结构展现特定的文件夹及其子文件()

public class FileTree{

public static void main(String [] args){

File f=new File("d:/aa");//创建新的File实例

printFile(f,0);

}

static void printFile(File file,int level){

  for(int i=0;iMlevel;i++){//遍历

    System.out,print("-")

}

  System.out.println(file.getName());//获取文件名

  if(file.isDirectory()){

  File[] files=file.listFiles();

  for(File temp:files){

  printFile(temp,level+1)

}

}

}

}       

               

枚举

枚举类型:只能够取待定值中的一个 使用enum关键字

所有的枚举类型隐性的继承java.lang.Enum

 

枚举实质上还是类!而每个被枚举的成员实质就是一个枚举类型的实例,他们默认都是public static final的。可以直接通过枚举类型名直接使用它们。

 

  

public class TestEnum {

 

public static void main(String[] args) {

 

Week ww = Week.FRIDAY;   //定义一个枚举类型对象

 

Week ww2 = Week.values()[2];  //返回枚举的第三个元素!!

 

System.out.println(ww2);

 

String temp = testEnum(Week.SUNDAY);

 

System.out.println(temp);

 

System.out.println(Week.TUESDAY.ordinal());  //返回TUESDAY在枚举中的索引

 

System.out.println(Week.TUESDAY.toString());

 

System.out.println(Week.TUESDAY.name());

 

System.out.println(Week.TUESDAY);

 

}

 

static String testEnum(Week w){

 

switch (w) {

 

case SUNDAY:

 

return "";

 

case MONDAY:

 

return "";

 

case TUESDAY:

 

return "";

 

case WEDNESDAY:

 

return "";

 

case THURSDAY:

 

return "";

 

case FRIDAY:

 

return "";

 

case SATURDAY:

 

return "";

 

}

 

return "";

 

}

 

 

 

}

 

 

 

 

 

enum  Week{  

 

SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY

 

}

 

推荐阅读