File类

File类是java.io包下代表与平台无关的文件和目录,如果希望在程序中操作文件和目录,都可以通过File类完成,File能新建、删除、重命名文件和目录,但不能访问文件内容,如果需要访问文件内容,则需要使用输入/输出流。
File类提供了很多操作文件和目录的方法:
访问文件名相关的方法
String getName():返回此File对象表示的文件名;
String getPath():返回此File对象所对应的路径名;
File getAbsoluteFile():返回此File对象所对应的绝对路径所对应的File对象;
String getAbsolutePath():返回此File对象所对应的绝对路径名;
String getParent():返回此File对象所对应目录的父目录名;
Boolean renameTo(File newName):重命名此File对象所对应的文件或目录,如果重名名成功,则返回true,否则返回false;
文件检测相关的方法
boolean exists():判断File对象所对应的文件或目录是否存在;
boolean canWrite():判断File对象所对应的文件和目录是否可写;
boolean canRead():判断File对象所对应的文件和目录是否可读;
boolean isFile():判断File对象所对应的是否是文件,而不是目录;
boolean isDirectory():判断File对象所对应是否是目录,而不是文件;
boolean isAbsolute():判断File对象所对应的文件或目录是否是绝对路径;

package com.wql.io;

import java.io.File;

public class FileDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        File file = new File("./src/com/wql/io/hello.txt");// 这并不是建立一个hello.txt文件,只是将路径"./second/hello.txt"封装成对象给file,file就指向这个路径

        // String getName():返回此File对象表示的文件名;
        System.out.println(file.getName());

        // String getPath():返回此File对象所对应的路径名;
        System.out.println(file.getPath());

        // String getAbsolutePath():返回此File对象所对应的绝对路径名;
        System.out.println("file的绝对路径:" + file.getAbsolutePath());

        // File getAbsoluteFile():返回此File对象所对应的绝对路径所对应的File对象;
        File file2 = file.getAbsoluteFile(); // 新建一个File对象file2接收此File对象所对应的绝对路径所对应的File对象,此时file2获得了file的绝对路径
        System.out.println("file2的绝对路径:" + file2.getAbsolutePath());

        //String getParent():返回此File对象所对应目录的父目录名;
        System.out.println("父目录名"+file.getParent());

        //boolean exists():判断File对象所对应的文件或目录是否存在;
        System.out.println(file.exists());

        //boolean canWrite():判断File对象所对应的文件和目录是否可写;
        System.out.println(file.canWrite());

        //boolean canRead():判断File对象所对应的文件和目录是否可读;
        System.out.println(file.canRead());

        //boolean isFile():判断File对象所对应的是否是文件,而不是目录
        System.out.println(file.isFile());

        //boolean isDirectory():判断File对象所对应是否是目录,而不是文件;
        System.out.println(file.isDirectory());

        //boolean isAbsolute():判断File对象所对应的文件或目录是否是绝对路径;
        System.out.println(file.isAbsolute());

        //boolean mkdir():创建一个File对象所对应的目录;
        System.out.println(file.mkdir());

        //String[] list():列出File对象的所有子文件名和路径名;
        String[] list=file.list();
        /*for(int i=0;i<list.length;i++){
            System.out.println(list[i]);    //file指向的路径是一个文件,并不是目录,数组list值为null
        }*/


        //File[] listFiles():列出File对象的所有子文件和路径,返回File数组;
        File[] fileList=file.listFiles();
        /*for(int i=0;i<fileList.length;i++){   //file指向的路径是一个文件,并不是目录,数组list值为null
            System.out.println(fileList[i].getAbsolutePath()+"---->>"+fileList[i].getName());
        }*/

        //static File[] listRoots():列出系统所有的根路径;
        File[] li=file.listRoots();
        for(int i=0;i<li.length;i++){//显示你电脑的系统所有顶级路径
            System.out.println(li[i]);
        }

    }

}

这里写图片描述

原文地址:https://www.cnblogs.com/wangqilong/p/9417562.html