当前位置: 首页 > news >正文

Java文件操作

目录

一、认识文件

二、树型结构组织和目录

​三、文件路径(path)

四、文件的种类 

五、在Java中操作文件

(一)构造方法

(二)各方法演示

方法:

方法:

方法:

方法:


一、认识文件

狭义上的文件:保存在硬盘上的文件。

广义上的文件:操作系统进行资源管理的一种机制,很多的软件/硬盘资源,抽象成“文件”来表示。

二、树型结构组织和目录

随着文件越来越多,对文件的系统管理也被提上了日程,如何进行文件的组织呢,一种合乎自然的想法出现了,就是按照层级结构进行组织 —— 也就是我们数据结构中学习过的树形结构。这样,一种专门用来存放管理信息的特殊文件诞生了,也就是我们平时所谓文件夹(folder)或者目录(directory)的概念。


三、文件路径(path)

从树根开始,到最终的文件,中间都要经过一些目录,把这些目录都记录下来,就成了“绝对路径”。

从任意一个结点出发,进行对路径的描述,这种描述方式就是“相对路径”。

一般使用 / 来分割路径中的多级目录。 

如果在代码中写一个相对路径,那么它的基准路径时谁呢?

基准路径就是工作路径,工作路径取决于程序运行的方式。

如果是在IDEA中直接运行,基准路径就是该项目的目录。

四、文件的种类 

文件分为文本文件和二进制文件。

大前提是,所有的文件都是二进制文件,但是有一些文件的二进制数据刚好能构成字符,就成了文本文件。

五、在Java中操作文件

Java 中通过 java.io.File 类来对一个文件(包括目录)进行抽象的描述。注意,有 File 对象,

并不代表真实存在该文件。

File类用于操作文件系统,下面是它的成员方法:

(一)构造方法

(二)各方法演示

方法:

代码演示:

public class Demo01 {public static void main(String[] args) throws IOException {File file=new File("./test");System.out.println(file.getParent());//获取父目录文件路径System.out.println(file.getName());//获取当前文件名称System.out.println(file.getPath());//获取构造方法中的路径System.out.println(file.getAbsolutePath());//获取绝对路径System.out.println(file.getCanonicalPath());//获取简化后的绝对路径(消除了.和..)}
}

运行结果:

 方法:

代码演示:

public class Demo02 {public static void main(String[] args) throws IOException {File file=new File("./test");boolean f=file.exists();//查看File对象描述的文件是否真实存在System.out.println(f);file.createNewFile();//创建File对象描述的文件boolean t=file.exists();//查看File对象描述的文件是否真实存在System.out.println(t);}
}

运行结果:

方法:

代码演示:

public class Demo03 {public static void main(String[] args) throws IOException {File file=new File("./test1");boolean t=file.createNewFile();//创建System.out.println(t);boolean f=file.delete();System.out.println(f);}
}

运行结果:

方法:

代码演示:

public class Demo04 {public static void main(String[] args) {File file=new File("./");System.out.println(file.list());//返回值是一个类型为String的数组System.out.println(Arrays.toString(file.list()));//将数组toString打印出来System.out.println(file.listFiles());//返回一个类型为File对象的数组System.out.println(Arrays.toString(file.listFiles()));//打印}
}

运行结果:

http://www.dtcms.com/a/278872.html

相关文章:

  • PTKQuery
  • 大规模测试自动化测试指南
  • day9 串口通信
  • 如何单独安装设置包域名
  • Kafka Broker源码解析(上篇):存储引擎与网络层设计
  • Java HTTP应用开发:从基础到实战
  • C语言-流程控制
  • 使⽤Pytorch构建⼀个神经⽹络
  • Linux 消息队列接收与处理线程实现
  • 【HTTP版本演变】
  • 考完数通,能转云计算/安全方向吗?转型路径与拓展路线分析
  • Elasticsearch9.x核心架构概述
  • Redis7持久化
  • 【postgresql数据库实现表的树结构查询】
  • 项目进度中间节点缺失,如何精细化分解任务
  • MIPI DSI(三) MIPI DSI 物理层和 D-PHY
  • 《大数据技术原理与应用》实验报告三 熟悉HBase常用操作
  • 现代数据平台能力地图:如何构建未来数据平台的核心能力体系
  • 为什么ER-GNSS/MINS-01能重新定义高精度导航?
  • vscode 源码编译
  • 创客匠人:创始人 IP 打造的系统化思维,是知识变现的底层逻辑
  • 【图像处理基石】什么是色盲仿真技术?
  • VUE export import
  • JS基础快速入门(详细版)
  • 【InnoDB磁盘结构3】撤销表空间,Undo日志
  • 力扣 30 天 JavaScript 挑战 第一题笔记
  • 智慧教育平台电子教材下载器:暑期超车,一键获取全版本教材,打造高效学习新体验
  • Git LFS 操作处理Github上传大文件操作记录
  • 终端安全最佳实践
  • sshpass原理详解及自动化运维实践