File

来源:互联网 发布:山东工商学院网络党课 编辑:程序博客网 时间:2024/05/29 08:44
1.删除文件public class FileApi {    public static void main(String[] args) {        File file = new File("/ceshi/ab/wuli2.txt");        if(!file.exists()){            file.mkdir();            System.out.println(file.getAbsoluteFile());        }        File deFile = new File("/ceshi/ab/");        delete("/ceshi/ab/");     /*   while (true){            System.out.println("time"+ DateTimeApi.getTimeNow());            try {                break;               *//* Thread.sleep(10*1000);*//*            } catch (InterruptedException e) {                e.printStackTrace();            }        }*/    }    /**     * 删除文件,可以是文件或文件夹     *     * @param fileName     *            要删除的文件名     * @return 删除成功返回true,否则返回false     */    public static boolean delete(String fileName) {        File file = new File(fileName);        if (!file.exists()) {            System.out.println("删除文件失败:" + fileName + "不存在!");            return false;        } else {            if (file.isFile())                return deleteFile(fileName);            else                return deleteDirectory(fileName);        }    }    /**     * 删除单个文件     *     * @param fileName     *            要删除的文件的文件名     * @return 单个文件删除成功返回true,否则返回false     */    public static boolean deleteFile(String fileName) {        File file = new File(fileName);        // 如果文件路径所对应的文件存在,并且是一个文件,则直接删除        if (file.exists() && file.isFile()) {            if (file.delete()) {                System.out.println("删除单个文件" + fileName + "成功!");                return true;            } else {                System.out.println("删除单个文件" + fileName + "失败!");                return false;            }        } else {            System.out.println("删除单个文件失败:" + fileName + "不存在!");            return false;        }    }    /**     * 删除目录及目录下的文件     *     * @param dir     *            要删除的目录的文件路径     * @return 目录删除成功返回true,否则返回false     */    public static boolean deleteDirectory(String dir) {        // 如果dir不以文件分隔符结尾,自动添加文件分隔符        if (!dir.endsWith(File.separator))            dir = dir + File.separator;        File dirFile = new File(dir);        // 如果dir对应的文件不存在,或者不是一个目录,则退出        if ((!dirFile.exists()) || (!dirFile.isDirectory())) {            System.out.println("删除目录失败:" + dir + "不存在!");            return false;        }        boolean flag = true;        // 删除文件夹中的所有文件包括子目录        File[] files = dirFile.listFiles();        for (int i = 0; i < files.length; i++) {            // 删除子文件            if (files[i].isFile()) {                flag = deleteFile(files[i].getAbsolutePath());                if (!flag)                    break;            }            // 删除子目录            else if (files[i].isDirectory()) {                flag =  deleteDirectory(files[i]                        .getAbsolutePath());                if (!flag)                    break;            }        }        if (!flag) {            System.out.println("删除目录失败!");            return false;        }        // 删除当前目录        if (dirFile.delete()) {            System.out.println("删除目录" + dir + "成功!");            return true;        } else {            return false;        }    }}2.创建文件 String path = "/ceshi/a.txt"
File dstFile = new File(path);if (!dstFile.exists()) {    /* 如果父目录不存在则创建 */    File parentFile = dstFile.getParentFile();    if (!parentFile.exists()) {        parentFile.mkdirs();    }}/* 创建空文件 */dstFile.createNewFile();3.创建空文件夹
String path = "/ceshi/";File dir = new File(path);if( !dir.exists()) {dir.mkdirs();}
4.获取文件夹下内容
File rootPath = new File("/ceshi/");
File[] files = rootPath.listFiles();
5.小知识
String path = "/ceshi/a.txt";
File file = new File("/ceshi/a.txt");
file.isFile():是否是文件
file.isDirectory():是否是文件夹
path.endWith(File.separator):路径是否是以分隔符结束(在 UNIX 系统上,此字段的值为 '/';在 Microsoft Windows 系统上,它为 '\'。




原创粉丝点击