当前位置:网站首页>文件系统的简单操作
文件系统的简单操作
2022-08-04 04:03:00 【Master_hl】
1. 文件的存储位置
文件是存储在硬盘上的!!
简单了解硬盘和内存的区别:
1.内存存储空间小,硬盘空间大。
2.内存访问速度快,硬盘访问速度慢。
3.内存成本高,硬盘便宜。
4.内存断点数据丢失,硬盘断点数据还在。
文件也是被操作系统管理的,操作系统内核中有一个专门的模块,文件系统。
2. File 概述
属性
修饰符及类型 | 属性 | 说明 |
static String | pathSeparator | 依赖于系统的路径分隔符 '/',String 类型的表示 |
static char | pathSeparator | 依赖于系统的路径分隔符 '/',char 类型的表示 |
构造方法
方法 | 说明 |
File(File parent, String child) | 根据父目录 + 孩子文件路径,创建一个新的 File 实例 |
File(String pathname) | 根据文件路径创建一个新的 File 实例,路径可以是绝对路径或者相对路径 |
File(String parent, String child) | 根据父目录 + 孩子文件路径,创建一个新的 File 实例,父目录用路径表示 |
方法
修饰符及返回值类型 | 方法 | 说明 |
String | getParent() | 返回 File 对象的父目录文件路径 |
String | getName() | 返回 FIle 对象的纯文件名称 |
String | getPath() | 返回 File 对象的文件路径 |
String | getAbsolutePath() | 返回 File 对象的绝对路径 |
String | getCanonicalPath() | 返回 File 对象的修饰过的绝对路径 |
boolean | exists() | 判断 File 对象描述的文件是否真实存在 |
boolean | isDirectory() | 判断 File 对象代表的文件是否是一个目录 |
boolean | isFile() | 判断 File 对象代表的文件是否是一个普通文件 |
boolean | createNewFile() | 根据 File 对象,自动创建一个空文件。成功创建后返回 true |
boolean | delete() | 根据 File 对象,删除该文件。成功删除后返回 true |
void | deleteOnExit() | 根据 File 对象,标注文件将被删除,删除动作会到 JVM 运行结束时才会进行 |
String[] | list() | 返回 File 对象代表的目录下的所有文件名 |
File[] | listFiles() | 返回 File 对象代表的目录下的所有文件,以 File 对象表示 |
boolean | mkdir() | 创建 File 对象代表的目录 |
boolean | mkdirs() | 创建 File 对象代表的目录,如果必要,会创建中间目录 |
boolean | renameTo(File dest) | 进行文件改名,也可以视为我们平时的剪切、粘贴操作 |
boolean | canRead() | 判断用户是否对文件有可读权限 |
boolean | canWrite() | 判断用户是否对文件有可写权限 |
绝对路径:以盘符开头的路径,称为 "绝对路径"。
相对路径:以 . 或者 .. 开头的路径称为 "相对路径"。
代码示例1
get系列的方法演示
public static void main(String[] args) throws IOException {
File file = new File("./test.txt");
System.out.println(file.getParent());
System.out.println(file.getName());
System.out.println(file.getPath());
System.out.println(file.getAbsoluteFile());
System.out.println(file.getCanonicalFile());
}
代码示例2
普通文件的创建
public static void main(String[] args) throws IOException {
// 前面没写 ./ ,也相当于是 ./ , ./可以神略。
File file = new File("hello.txt");
System.out.println(file.exists()); // false
System.out.println(file.isDirectory()); // false
System.out.println(file.isFile()); // false
System.out.println("==============");
file.createNewFile();
System.out.println(file.exists()); // true
System.out.println(file.isDirectory()); // false
System.out.println(file.isFile()); // true
}
代码示例3
普通文件的删除
public static void main(String[] args) throws InterruptedException {
File file = new File("hello.txt");
//file.delete();
//System.out.println(file.exists()); // false
// 程序退出时才删除
file.deleteOnExit(); // 用来创建临时文件
Thread.sleep(5000);
System.out.println(file.exists()); // true
}
代码示例4
创建目录
public static void main(String[] args) {
File file = new File("test/aa/bb");
System.out.println(file.exists()); // false
System.out.println(file.isDirectory()); // false
System.out.println("=============");
//file.mkdir(); // 创建单级目录,使用这个创建多级目录,下面会输出两个 false
file.mkdirs(); // 创建多级目录
System.out.println(file.exists());
System.out.println(file.isDirectory());
}
代码示例5
文件重命名
public static void main(String[] args) {
File file1 = new File("test1.txt");
File file2 = new File("test2.txt");
file1.renameTo(file2); // 把文件 file1 的名字改成 test2.txt
}
边栏推荐
猜你喜欢
The video of machine learning to learn [update]
RSS订阅微信公众号初探-feed43
Basic form validation process
6-port full Gigabit Layer 2 network managed industrial Ethernet switch Gigabit 2 optical 4 electrical fiber self-healing ERPS ring network switch
【观察】超聚变:首提“算网九阶”评估模型,共建开放繁荣的算力网络
42. 接雨水
自定义通用分页标签01
用户与用户互发红包/支付宝C2C/B2C现金红包php源码示例/H5方式/兼容苹果/安卓
2千兆光+6千兆电导轨式网管型工业级以太网交换机支持X-Ring冗余环网一键环网交换机
如何简化现代电子采购的自动化?
随机推荐
案例 | 重庆银行流动数据安全挑战及应对实践
RSS订阅微信公众号初探-feed43
SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropri
Introduction to the memory model of the JVM
八年软件测试工程师带你了解-测试岗进阶之路
Reproduce 20-character short domain name bypass
系统设计.秒杀系统
Metaverse "Drummer" Unity: Crazy expansion, suspense still exists
Mobile payment online and offline payment scenarios
自定义通用分页标签02
Use serve to build a local server
Stop behind.
力扣(LeetCode)215. 数组中的第K个最大元素(2022.08.03)
Y86. Chapter iv Prometheus giant monitoring system and the actual combat, Prometheus storage (17)
【技巧】借助Sentinel实现请求的优先处理
【观察】超聚变:首提“算网九阶”评估模型,共建开放繁荣的算力网络
mq应用场景介绍
SQL interview Questions
[Ryerson emotional speaking/singing audiovisual dataset (RAVDESS)]
使用serve搭建本地服务器