java File总结

File 类位于java.io包中,File对象的方法有创建文件,删除文件,判断列表下的文件是目录还是真实文件。
创建文件
File file=new File(filename);
File file1 = new File ("C://temp//myNote.txt"); // in Windows  这是windows文件系统下的方法
    File file2 = new File ("/tmp/myNote.txt"); // in Linux/Unix        unix文件系统的方法

File类的重要方法:
boolean exists():判断File对象指向的文件是否存在
String getName():得到文件的名字
boolean isDirectory():判断File所指向的文件是否为目录
boolean isFile():判断File所指向的文件是否为真实文件
long length():得到File对象所指向的文件的长度,已byte计
File[] listFiles():将File对象指向的文件下一级的所有目录和真实文件作为一个数组返回,数组中每个文件对象对应这个目录
下的文件和目录,如果File对象是个真实文件,返回null值
static File[] listRoots():通过File类可直接调用的静态方法,可将机器上的每个逻辑驱动器作为返回File数组对象中的一个
元素。
boolean mkdir():根据File对象的名字(路径)创建一个目录。
boolean mkdirs():如果File对象名字有多级目录,可以一次性创建。
boolean delete():从磁盘上删除File对象所指向的文件

//建立目录、文件、删除文件或目录
public static void main(String[] args) {
   File myFile=new File("...");
   if(myFile.mkdir()){//单级目录
     System.out.println("建立目录成功");
   }else{
    System.out.println("建立目录失败");
   }
  
   File myFile_A=new File("...");
   if(myFile_A.mkdirs()){//多级目录
     System.out.println("建立目录成功");
   }else{
     System.out.println("建立目录失败");
   }
  
   File file = new File("...");
   try {
     file.createNewFile();//建立空文件
   } catch (IOException e) {
     e.printStackTrace();
   }
     
   if(file.delete()){//删除文件或删除目录
     (删除文件的另外一个方法:file.deleteOnExit() 在虚拟机终止时,请求删除此抽象路径名表示的文件或目录。)
     System.out.println("删除成功");
   }else{
     System.out.println("删除失败");
   } 


//文件的创建与删除
public void testCreateAndDelete(String filename){
//通过传入的名字构造对象
File file=new File(filename);
//判断文件是否存在
if(file.exists()){
//判断是否为目录
if(file.isDirectory()){
System.out.println("这是一个目录:"+file.getAbsolutePath());
}
//如果是文件
if(file.isFile()){
System.out.println("这是一个文件:"+file.getlength+" "+file.getAbsolutePath());
}
//删除文件
file.delete();
String path=file.getAbsolutePath();
String name=file.getName();
System.out.print("文件已删除"+"文件名是:"+name+" 路径:"+path);
}else {
try{ //创建文件时会抛出异常,需要用try  catch处理或throws继续抛出
file.createNewFile();
System.out.println("文件已创建");
}catch(Exception ef){
System.out.println("文件创建失败");
}
}
}
通过File的方法对电脑上的文件进行查找
首先输入一个地址,判断是目录还是文件,如果是目录则对其下一级进行查找(递归),如果是文件,计数的加一。
public class FileDisplay{
public static void main(String []args){
FileDisplay fd=new FileDisplay();
String name="src";
}
public int print(String name){
int count=0;
File file=new File(name);
File[] subfile=file.listFile(); //列表目录
if(subfile==null||subfile.length==0){
return 0;
}
//遍历第一层目录
for(int i=0;i<subfile.length;i++){
if(subfile[i].isDirectory()){
String dir=subfile[i].getAbsolutePath();
System.out.println("目录:"+dir);
count+=print(dir);
}
if(subfile[i].isFile()){
count++;
String filename=subfile[i].getAbsolutePath();
System.out.println("文件:"+filename);
}
}
return count;
}
}

你可能感兴趣的:(java)