Java文件类File

简介: Java文件类File

1 File类概述和构造方法

File类介绍

 

它是文件和目录路径名的抽象表示

文件和目录是可以通过File封装成对象的

对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以 是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的

File类的构造方法

 

示例代码

public class FileDemo01 {
    public static void main(String[] args) {
//File(String pathname):通过将给定的路径名字符串转换为抽象路径名来创建新的 File
        实例。
        File f1 = new File("E:\\oldlu\\java.txt");
        System.out.println(f1);
//File(String parent, String child):从父路径名字符串和子路径名字符串创建新的
        File实例。
        File f2 = new File("E:\\oldlu","java.txt");
        System.out.println(f2);
//File(File parent, String child):从父抽象路径名和子路径名字符串创建新的 File
        实例。
        File f3 = new File("E:\\oldlu");
        File f4 = new File(f3,"java.txt");
        System.out.println(f4);
    }
}

2 File类创建功能

方法分类

 

示例代码

public class FileDemo02 {
    public static void main(String[] args) throws IOException {
//需求1:我要在E:\\itcast目录下创建一个文件java.txt
        File f1 = new File("E:\\oldlu\\java.txt");
        System.out.println(f1.createNewFile());
        System.out.println("--------");
//需求2:我要在E:\\itcast目录下创建一个目录JavaSE
        File f2 = new File("E:\\oldlu\\JavaSE");
        System.out.println(f2.mkdir());
        System.out.println("--------");
//需求3:我要在E:\\itcast目录下创建一个多级目录JavaWEB\\HTML
        File f3 = new File("E:\\oldlu\\JavaWEB\\HTML");
// System.out.println(f3.mkdir());
        System.out.println(f3.mkdirs());
        System.out.println("--------");
//需求4:我要在E:\\itcast目录下创建一个文件javase.txt
        File f4 = new File("E:\\oldlu\\javase.txt");
// System.out.println(f4.mkdir());
        System.out.println(f4.createNewFile());
    }
}

3 File类判断和获取功能

判断功能

 

获取功能

 

示例代码

public class FileDemo04 {
    public static void main(String[] args) {
//创建一个File对象
        File f = new File("myFile\\java.txt");
// public boolean isDirectory():测试此抽象路径名表示的File是否为目录
// public boolean isFile():测试此抽象路径名表示的File是否为文件
// public boolean exists():测试此抽象路径名表示的File是否存在
        System.out.println(f.isDirectory());
        System.out.println(f.isFile());
        System.out.println(f.exists());
// public String getAbsolutePath():返回此抽象路径名的绝对路径名字符串
// public String getPath():将此抽象路径名转换为路径名字符串
// public String getName():返回由此抽象路径名表示的文件或目录的名称
        System.out.println(f.getAbsolutePath());
        System.out.println(f.getPath());
        System.out.println(f.getName());
        System.out.println("--------");
// public String[] list():返回此抽象路径名表示的目录中的文件和目录的名称字符串数
// public File[] listFiles():返回此抽象路径名表示的目录中的文件和目录的File对象
                数组
        File f2 = new File("E:\\oldlu");
        String[] strArray = f2.list();
        for(String str : strArray) {
            System.out.println(str);
        }
        System.out.println("--------");
        File[] fileArray = f2.listFiles();
        for(File file : fileArray) {
// System.out.println(file);
// System.out.println(file.getName());
            if(file.isFile()) {
                System.out.println(file.getName());
            }
        }
    }
}

4 File类删除功能

方法分类

public class FileDemo03 {
    public static void main(String[] args) throws IOException {
// File f1 = new File("E:\\oldlu\\java.txt");
//需求1:在当前模块目录下创建java.txt文件
        File f1 = new File("myFile\\java.txt");
// System.out.println(f1.createNewFile());
//需求2:删除当前模块目录下的java.txt文件
        System.out.println(f1.delete());
        System.out.println("--------");
//需求3:在当前模块目录下创建itcast目录
        File f2 = new File("myFile\\oldlu");
// System.out.println(f2.mkdir());
//需求4:删除当前模块目录下的itcast目录
        System.out.println(f2.delete());
        System.out.println("--------");
//需求5:在当前模块下创建一个目录itcast,然后在该目录下创建一个文件java.txt
        File f3 = new File("myFile\\oldlu");
// System.out.println(f3.mkdir());
        File f4 = new File("myFile\\oldlu\\java.txt");
// System.out.println(f4.createNewFile());
//需求6:删除当前模块下的目录itcast
        System.out.println(f4.delete());
        System.out.println(f3.delete());
    }
}

绝对路径:完整的路径名,不需要任何其他信息就可以定位它所表示的文件。例如: E:\oldlu\java.txt

相对路径:必须使用取自其他路径名的信息进行解释。例如: myFile\java.txt

目录
相关文章
|
11天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
39 2
|
5天前
|
存储 缓存 安全
java 中操作字符串都有哪些类,它们之间有什么区别
Java中操作字符串的类主要有String、StringBuilder和StringBuffer。String是不可变的,每次操作都会生成新对象;StringBuilder和StringBuffer都是可变的,但StringBuilder是非线程安全的,而StringBuffer是线程安全的,因此性能略低。
|
22天前
|
存储 安全 Java
java.util的Collections类
Collections 类位于 java.util 包下,提供了许多有用的对象和方法,来简化java中集合的创建、处理和多线程管理。掌握此类将非常有助于提升开发效率和维护代码的简洁性,同时对于程序的稳定性和安全性有大有帮助。
43 17
|
14天前
|
存储 缓存 安全
在 Java 编程中,创建临时文件用于存储临时数据或进行临时操作非常常见
在 Java 编程中,创建临时文件用于存储临时数据或进行临时操作非常常见。本文介绍了使用 `File.createTempFile` 方法和自定义创建临时文件的两种方式,详细探讨了它们的使用场景和注意事项,包括数据缓存、文件上传下载和日志记录等。强调了清理临时文件、确保文件名唯一性和合理设置文件权限的重要性。
38 2
|
14天前
|
安全 Java
Java多线程集合类
本文介绍了Java中线程安全的问题及解决方案。通过示例代码展示了使用`CopyOnWriteArrayList`、`CopyOnWriteArraySet`和`ConcurrentHashMap`来解决多线程环境下集合操作的线程安全问题。这些类通过不同的机制确保了线程安全,提高了并发性能。
|
18天前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
67 4
|
19天前
|
Java 编译器 开发者
Java异常处理的最佳实践,涵盖理解异常类体系、选择合适的异常类型、提供详细异常信息、合理使用try-catch和finally语句、使用try-with-resources、记录异常信息等方面
本文探讨了Java异常处理的最佳实践,涵盖理解异常类体系、选择合适的异常类型、提供详细异常信息、合理使用try-catch和finally语句、使用try-with-resources、记录异常信息等方面,帮助开发者提高代码质量和程序的健壮性。
40 2
|
23天前
|
存储 安全 Java
如何保证 Java 类文件的安全性?
Java类文件的安全性可以通过多种方式保障,如使用数字签名验证类文件的完整性和来源,利用安全管理器和安全策略限制类文件的权限,以及通过加密技术保护类文件在传输过程中的安全。
|
24天前
|
Java 编译器 Maven
Java“class file contains wrong class”解决
当Java程序运行时出现“class file contains wrong class”错误,通常是因为类文件与预期的类名不匹配。解决方法包括:1. 确保类名和文件名一致;2. 清理并重新编译项目;3. 检查包声明是否正确。
|
25天前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
34 4
下一篇
无影云桌面