黑马程序员——JAVA基础------IO流(一)----File类

来源:互联网 发布:法律科学 知乎 编辑:程序博客网 时间:2024/05/17 21:49

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——

一、概述

• File类:表示文件和目录路径名的抽象表示形式。
• File类可以实现文件的创建、删除、重命名、得到路径、创建时间等等,是唯一与文 件本身有关的操作类。
• File类的定义:
• public class File
• extends Object
• implements Serializable, Comparable<File>

这里写图片描述

这里写图片描述

代码演示:

package com.joe.file;import java.io.File;import java.io.IOException;/** * File类的使用 * @author joe * */public class FileDemo {    public static void main(String[] args) {        //File.separator 表示分隔符        //D:\\lamp        File file1 = new File("D:"+File.separator+"lamp"+File.separator+"lamp.txt");        //路径分隔符//      String s  = File.pathSeparator;        //文件是否存在        if(!file1.exists()){            try {                //创建一个新文件                boolean b = file1.createNewFile();                System.out.println("创建文件:"+b);            } catch (IOException e) {                e.printStackTrace();            }        }        //删除文件        //System.out.println(file1.delete());        //得到文件的上一级路径        System.out.println(file1.getParent());        //判断一个路径是否是文件夹        System.out.println("是否是目录:"+file1.isDirectory());        ////判断一个路径是否是文件        System.out.println("是否是文件:"+file1.isFile());        File file2 = new File("d:\\vince");        //列出文件夹中的所有文件名        String[] fileName = file2.list();        for (String s : fileName) {            System.out.println(s);        }        //列出文件夹中的所有文件,以File数组返回        File[] files = file2.listFiles();        for (File file : files) {            System.out.println(file.getPath()+"---"+file.length());        }        //创建文件夹        File file3 = new File("d:\\xiaobai\\baibai");        file3.mkdirs();        //重命名        File file4 = new File("d:\\xiaobai\\xiaobaibai");        file3.renameTo(file4);    }}

练习:

package com.joe.file;import java.io.File;/** * 文件搜索 任意给定一个目录,从该目录中(包括子目录)查找出所有后缀txt的文 件,并打印出来 *  * @author joe * */public class fileDemo {    // 使用递归算法实现文件查找功能    public static void findFile(File file, String extName) {        if (file == null) {            return;        }        // 如果是目录,那么获取该目录下的所有文件的File对象        if (file.isDirectory()) {            File[] fs = file.listFiles();            // 判断fs是否为空文件夹            if (fs != null) {                for (File f : fs) {                    // 遍历后使用递归调用                    findFile(f, extName);                }            }        }// 当File是一个文件时,那么我们就进行判断扩展名是否为指定的扩展名        else {            // 将文件的路径名全部变为小写            String path = file.getPath().toLowerCase();            // 判断后缀是否为".jpg"            if (path.endsWith(extName)) {                System.out.println(file.getPath());            }        }    }    public static void main(String[] args) {        File file = new File("d:\\vince");        String extName = ".jpg";        findFile(file, extName);    }}
0 0
原创粉丝点击