🧑💻作者名称:DaenCode
🎤作者简介:啥技术都喜欢捣鼓捣鼓,喜欢分享技术、经验、生活。
😎人生感悟:尝尽人生百味,方知世间冷暖。
📖所属专栏:JavaSE项目

文章目录
- 🌟系统介绍
- 🌟部分功能运行
- 重命名文件
- 创建文件
- 删除文件
- 🌟知识一览
- File类常用API
- Linux文件系统命令
- 数组用法
- IO流基础
- 🌟写在最后
🌟系统介绍
体验地址:JavaSE基础夯实之伪Linux文件系统
实现功能:
- 创建目录
- 删除目录
- 切换目录
- 获取路径下目录及文件列表
- 创建文件
- 删除文件
- 获取当前路径
- 文件重命名
所需知识:
- File类常用API的用法
- 异常捕获
- 条件控制
- 数组知识
- 循环知识
- IO流知识
- Linux中的cd、mkdir、rm、touch、ls、pwd等等简单文件操作命令。
🌟部分功能运行
重命名文件
通过Linux命令的mv命令对当前new.txt重命名为daen.txt。

创建文件
通过linux中的touch命令创建test.txt。

删除文件
通过rm命令删除test.txt文件。

🌟知识一览
File类常用API
| API | 描述 |
|---|---|
File(String pathname) | 通过给定的路径名字符串创建File对象。 |
File(File parent, String child) | 创建File对象,表示指定父目录和指定子目录下的文件或目录。 |
exists() | 测试文件或目录是否存在。 |
isDirectory() | 测试文件是否为目录。 |
mkdir() | 创建此抽象路径名指定的目录。 |
createNewFile() | 当指定抽象路径名表示的文件不存在时,创建一个新的空文件。 |
delete() | 删除此抽象路径名表示的文件或目录。 |
listFiles() | 返回目录下的所有文件和子目录的文件数组。 |
getAbsolutePath() | 返回此抽象路径名的绝对路径名字符串。 |
getCanonicalPath() | 返回此抽象路径名的规范路径名字符串。 |
getName() | 返回此抽象路径名表示的文件或目录的名称。 |
getParent() | 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。 |
lastModified() | 返回文件或目录最后一次被修改的时间,以毫秒表示。 |
length() | 返回此抽象路径名表示的文件的长度(以字节为单位)。注意,如果此路径名表示的文件是一个目录,那么此方法返回值为0。 |
renameTo(File dest) | 将此抽象路径名重命名为指定的路径名。 |
isFile() | 测试此抽象路径名表示的文件是否是一个标准文件。 |
Linux文件系统命令
| 命令 | 描述 | 用法 |
|---|---|---|
| ls | 列出目录内容 | ls [选项] [文件/目录] |
| cd | 切换目录 | cd [目录路径] |
| pwd | 显示当前工作目录 | pwd |
| mkdir | 创建新目录 | mkdir [目录名] |
| rmdir | 删除空目录 | rmdir [目录名] |
| cp | 复制文件或目录 | cp [选项] [源文件/目录] [目标文件/目录] |
| mv | 移动文件或目录,或者重命名 | mv [选项] [源文件/目录] [目标文件/目录] |
| rm | 删除文件或目录 | rm [选项] [文件/目录] |
| touch | 创建空文件或更新文件时间戳 | touch [文件] |
| cat | 查看文件内容 | cat [文件] |
| less | 逐页查看文件内容 | less [文件] |
| head | 显示文件开头部分 | head [选项] [文件] |
| tail | 显示文件结尾部分 | tail [选项] [文件] |
| ln | 创建链接 | ln [选项] [源文件] [链接文件] |
| find | 在文件系统中搜索文件 | find [路径] [选项] [表达式] |
| grep | 在文件中搜索匹配的文本 | grep [选项] [模式] [文件] |
| chmod | 修改文件或目录的权限 | chmod [选项] [权限] [文件/目录] |
| chown | 修改文件或目录的所有者 | chown [选项] [所有者] [文件/目录] |
| chgrp | 修改文件或目录的所属组 | chgrp [选项] [组] [文件/目录] |
| tar | 打包和解压文件 | tar [选项] [文件/目录] |
| gzip | 压缩文件 | gzip [选项] [文件] |
| unzip | 解压缩文件 | unzip [选项] [文件] |
数组用法
| 操作 | 描述 | 示例 |
|---|---|---|
| 声明数组 | 声明一个数组变量 | int[] numbers; |
| 创建数组 | 使用 new 关键字创建实际的数组对象 | numbers = new int[5]; |
| 初始化数组 | 在创建数组时直接初始化数组元素的值 | int[] numbers = {1, 2, 3, 4, 5}; |
| 访问数组元素 | 使用索引访问数组中的元素 | int thirdNumber = numbers[2]; |
| 修改数组元素 | 通过索引修改数组中的元素值 | numbers[3] = 10; |
| 获取数组长度 | 使用 length 属性获取数组的长度 | int length = numbers.length; |
| 遍历数组 | 使用循环结构遍历数组中的所有元素 | for (int i = 0; i < numbers.length; i++) { System.out.println(numbers[i]); } |
IO流基础
| IO流类型 | 描述 | 示例 |
|---|---|---|
| 字节流 | 操作字节数据的IO流类型 | - InputStream:用于从输入源读取字节数据- OutputStream:用于向输出目标写入字节数据- FileInputStream:从文件读取字节数据- FileOutputStream:向文件写入字节数据- BufferedInputStream:对其他字节流提供缓冲功能 |
| 字符流 | 操作字符数据的IO流类型 | - Reader:用于从输入源读取字符数据- Writer:用于向输出目标写入字符数据- FileReader:从文件读取字符数据- FileWriter:向文件写入字符数据- BufferedReader:对其他字符流提供缓冲功能- BufferedWriter:对其他字符流提供缓冲功能 |
| 缓冲流 | 提供缓冲功能,可以提高IO性能 | - BufferedInputStream:对其他字节流提供缓冲功能- BufferedOutputStream:对其他字节流提供缓冲功能- BufferedReader:对其他字符流提供缓冲功能- BufferedWriter:对其他字符流提供缓冲功能 |
| 对象流 | 序列化和反序列化Java对象的IO流类型 | - ObjectInputStream:读取序列化对象- ObjectOutputStream:写入序列化对象 |
| 转换流 | 在字节流和字符流之间进行转换 | - InputStreamReader:将字节流转换为字符流- OutputStreamWriter:将字符流转换为字节流 |
| 文件操作流 | 用于操作文件的IO流类型,如创建、删除、重命名等操作 | - FileInputStream:从文件读取字节数据- FileOutputStream:向文件写入字节数据- FileReader:从文件读取字符数据- FileWriter:向文件写入字符数据 |
🌟写在最后
最后感谢大家的阅读,对于小案例所需知识现在还没有系统的给大家整理,大家可以去网上找找相关资料。此外,也很乐意大家基于此案例完善更多的功能。有想法的可以在评论区讨论哦!




















