File

File对象既可以表示文件,文件夹
* 1.文件名
* getName:返回文件名
* getPath:如果是绝对路径,则返回完成路径,否则相对路径
* getAbsolutePath:返回相对路径
* getParent:返回上一级目录,如果是相对路径,则为空
* String getParent()
* File getParentFile()
*
* 返回下一级:String[] list()
* File[] listFiles()
* 2.判断信息
* exists:文件或目录是否存在
* canRead:文件或目录是否可读
* isFile:是否是文件
* isDirectory:是否是文件夹,文件不存在,默认为文件夹
* isAbsolute:是否是绝对路径
* length:长度,字节数,文件夹长度为0
* 3.创建文件:createNewFile()
* ----文件不存在,创建文件,并返回true
* ----文件存在,返回false
* 4.删除文件:delete
* -----删除成功,返回true
* -----删除失败,返回false
* 5.创建目录:mkdir:创建子目录
* mkdirs:没有子目录,创建孙子目录

package file;


/*
 * File对象既可以表示文件,文件夹
 * 1.文件名
 * getName:返回文件名
 * getPath:如果是绝对路径,则返回完成路径,否则相对路径
 * getAbsolutePath:返回相对路径
 * getParent:返回上一级目录,如果是相对路径,则为空
 *         String getParent()
 *         File getParentFile()
 *         
 * 返回下一级:String[] list()
 *         File[] listFiles()
 * 2.判断信息
 * exists:文件或目录是否存在
 * canRead:文件或目录是否可读
 * isFile:是否是文件
 * isDirectory:是否是文件夹,文件不存在,默认为文件夹
 * isAbsolute:是否是绝对路径
 * length:长度,字节数,文件夹长度为0
 * 3.创建文件:createNewFile()
 *    ----文件不存在,创建文件,并返回true
 *    ----文件存在,返回false
 * 4.删除文件:delete
 *    -----删除成功,返回true
 *    -----删除失败,返回false
 * 5.创建目录:mkdir:创建子目录
 *          mkdirs:没有子目录,创建孙子目录
 */


import java.io.File;
import java.io.IOException;

public class test01 {
    
    public static void main(String[] args) throws IOException {
        
        
        //文件
        String path="E:/java/read.txt";
        File file=new File(path);
        
        System.out.println(file.getName());//read.txt
        System.out.println(file.getPath());//E:\java\read.txt
        System.out.println(file.getAbsolutePath());//E:\java\read.txt
        System.out.println(file.exists());//true
        System.out.println(file.canRead());//true
        System.out.println(file.isFile());//true
        System.out.println(file.isAbsolute());//true
        
        System.out.println();
        
        //目录
        String path1="E:/java";
        File file1=new File(path1);
        System.out.println(file1.getName());//java
        System.out.println(file1.getPath());//E:\java
        System.out.println(file1.getParent());//E:\
        System.out.println(file1.getAbsolutePath());//E:\java
        System.out.println(file1.exists());//true
        System.out.println(file1.canRead());//true
        System.out.println(file1.isFile());//false
        System.out.println(file1.isAbsolute());//true
        
        //下一级1: string
        String[] lists = file1.list();
        for(String str :lists ) {
            System.out.println(str);//chapter1
        }
        
        System.out.println();
        //下一级2:file
        File[] listFiles = file1.listFiles();
        for (File file2 : listFiles) {
            System.out.println(file2);//E:\java\chapter1
        }
        
        
        
        System.out.println();
        
        //盘符
        File file2=new File("hello.class");
        System.out.println(file2.getName());//hello.class
        System.out.println(file2.getPath());//hello.class
        System.out.println(file2.getParent());//null
        System.out.println(file2.getAbsolutePath());//C:\Users\dell3010\eclipse-workspace\FileTest\hello.class
        System.out.println(file2.exists());//false
        System.out.println(file2.canRead());//false
        System.out.println(file2.isFile());//false
        System.out.println(file2.isAbsolute());//false
        
        System.out.println();
        
        
        //创建文件
        String mypath="E:/java/hello.txt";
        File myfile=new File(mypath);
        
        if(!myfile.exists()) {
            boolean flag=myfile.createNewFile();
            System.out.println(flag);
        }
        
        //删除文件
        if(myfile.exists()) {
            boolean flag=myfile.delete();
            System.out.println(flag);
        }
        
        //创建目录
        File f3=new File("E:/java/chapter1");
        File f4=new File("E:/java/chapter2/class");
        
        f3.mkdir();//创建儿子目录
        f4.mkdirs();//儿子目录不存在,创建孙子目录
package file;

//文件或者目录大小:递归

import java.io.File;
import java.io.IOException;

public class test02 {
    
    public static void main(String[] args) {
        
        File myfile=new File("E:/java");
        long num=getLength(myfile);
        System.out.println(num);
    }
    
    public static long getLength(File f) {
        
        //返回文件或者目录的大小
        if(f.isFile()) {
            return f.length();
            }
        else if(f.isDirectory()){
                
                File[] listFiles = f.listFiles();
                long sum=0;
                for (File file : listFiles) {                
                    sum+=getLength(file);                
                      }
                return sum;
                        
            }
        return 0;
        
        }        
}

 

        
        
    }        
}

 

posted on 2020-06-03 16:26  happygril3  阅读(195)  评论(0)    收藏  举报

导航