什么是文件?
我们传统的文件印象是这样的:
以下是百度百科的定义:
所谓“文件”,就是在我们的计算机中,以实现某种功能、或某个软件的部分功能为目的而定义的一个单位。
文件:计算机中的文件可以是文档、程序、快捷方式或设备。文件是由文件名和图标组成,一种类型的文件具有相同的图标,文件名不能超过255个字符(包括空格)。
文件是指存储在外部介质上的数据的集合。
在以上定义中,出现了几个重要的关键词:
- 单位
- 设备
- 存储在外部介质上的数据的集合
从这几个关键词统一来说,我们可以理解为文件可以是指我们常见的
文本文件、图片文件、视频文件、硬盘、U盘、显示屏幕等等
存储在外部介质上的数据的集合 中的 “外部” 指的就是相对内存而言的外部,只要不是在内存中,那就在“外部”
显示屏也能说是文件?是的,我认为只要是能存储或展示信息的“广义设备”都能称之为文件
显示屏之所以能呈现出丰富多彩的画面,是因为它包含成千上万个像素点,我们可以认为显示屏也是“具备存储功能的”,只要电源没有断,它就能持续显示当前所显示的内容,其实这也是“存储并展示信息”的体现。当我们编程将在内存中运行的结果打印到输出控制台上,其实也就是将【内存文件】中的运行结果输出到了【显示屏文件】
如此描述,我们应该就对文件这个概念有了更为深入的理解
再进一步举例,我们的电脑在关闭电源的时候,运行的程序是存储在【硬盘文件】中的,当我们开启电脑,【硬盘文件】中的程序就被读取到【内存文件】中进行运行,而运行的结果实时呈现在【显示屏文件上】
我们看到,数据(包括程序)是在计算机系统中的文件之间“来回穿梭”的 ,在这个过程中,数据会在各种“文件”之间转移、处理加工、呈现等
文本文件编程快速入门
创建文件夹和文件
/**
* 创建文件夹和文件
*/
public static void main(String[] args) throws Exception {
File dir = new File("E:\\BigXMeng");
if(!dir.exists()){//如果文件夹不存在
dir.mkdir();//创建文件夹
}
File file1 = new File("E:\\BigXMeng\\a.txt");
if(!file1.exists()){//如果文件不存在
file1.createNewFile();//创建文件
}
File file2 = new File("E:\\BigXMeng\\b.jpg");
if(!file2.exists()){//如果文件不存在
file2.createNewFile();//创建文件
}
File dir2 = new File("E:\\BigXMeng\\bigbigmeng");
if(!dir2.exists()){//如果文件夹不存在
dir2.mkdir();//创建文件夹
}
}
运行结果:
删除文件夹
文件夹只有为空的时候才能直接删除,所以在删除文件夹之前需要先检查文件夹是否为空,如果不为空需要先将文件夹中的子文件夹及文件删除
/**
@author Liu Xianmeng
@createTime 2022/11/29 8:37
@instruction
*/
@SuppressWarnings({"all"})
public class IOTEST {
/**
* deleteDir()函数用于删除一个文件夹
* 如果这个文件夹中存在文件或文件夹
* 则需要将其中的文件或文件夹删除后再将此文件夹删除
* 如果传入的是一个文件路径 则直接将此文件删除即可
* @param path 文件夹或文件的路径
*/
public void deleteDir(String path){
try {
File dir = new File(path);
if(dir.isDirectory()){
String[] strArr = dir.list();
if(strArr.length == 0) dir.delete();
else {
for(String str : strArr){
File dir2 = new File(dir, str);
if(dir2.isFile()){
dir2.delete();
}else if(dir2.isDirectory()){
deleteDir(dir2.getAbsolutePath());
}
}
dir.delete();
System.out.println("删除成功:)");
}
}else {
dir.delete();
System.out.println("删除成功:)");
}
}catch (Exception e){
System.out.println("删除出现异常:(");
}
}
/**
* 创建文件夹和文件
*/
public static void main(String[] args) throws Exception {
new IOTEST().deleteDir("E:\\BigXMeng");
}
}
运行结果:
(后续更新...)
欢迎大家指出文章中不对的地方及需要改进的地方 >.<