【Java系列】文件操作详解

这篇具有很好参考价值的文章主要介绍了【Java系列】文件操作详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

个人主页:兜里有颗棉花糖
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创
收录于专栏【Java系列专栏】【JaveEE学习专栏】
本专栏旨在分享学习JavaEE的一点学习心得,欢迎大家在评论区交流讨论💌

一、什么是文件

文件是在硬盘上存储数据的一种方式。即数据是在硬盘上进行存储的,但是我们并不会直接去操作硬盘,而是通过文件的方式去访问数据的(操作系统将硬盘上的一些细节进行了封装,可以理解为操作系统通过文件系统来管理硬盘),作为开发者我们只需要了解文件相关的接口即可。

【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
上图中的NTFS文件系统就是windows上的文件系统,这个文件系统背后一定有固定的格式来组织硬盘上的数据(即规定硬盘上的哪一块哪一块空间存储什么样什么样的数据)。而EXT4是Linux系统上的文件系统。

【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习

不同的文件系统管理硬盘的方式都是类似的,即都是通过目录 - 文件构成了N叉树的这样一个树形结构。

文件系统上的文件分为两大类:文本文件(存储的是字符,用记事本打开能够开懂)和二进制文件(存储的是二进制的数据,用记事本打开不能看懂)。

二、Java中操作文件

Java中通过java.io.File类来对一个文件(包括目录)进行抽象的描述。io即input输入和output输出,要站在CPU的角度去看待输入输出。通过FIle类创建出来的对象既可以对应到一个真实存在的文件,也可以对应到并不真实存在的文件。
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习

三、java.io.File类

先来看File类的构造方法

【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习

  • File(File parent, String child):根据父目录 + 孩子文件路径,创建一个新的 File 实例。
  • File(String pathname):根据文件路径创建一个新的 File 实例,路径可以是绝对路径或者相对路径。此处参数的字符串是一个路径,此路径既可以是绝对路径也可以是相对路径。
  • File(String parent, String child):根据父目录 + 孩子文件路径,创建一个新的 File 实例,父目录用路径表示。

相关方法如下:

修饰符及返回值类型 方法签名 说明
String getParaent 返回 File 对象的父目录文件路径
String getName 返回 FIle 对象的纯文件名称
String getPath 返回 File 对象的文件路径
String getAbsolutePath() 返回 File 对象的绝对路径
String getCanonicalPath() 返回 File 对象的修饰过的绝对路径
boolean isDirectory() 判断 File 对象代表的文件是否是一个目录
boolean exists() 判断 File 对象描述的文件是否真实存在
boolean isFile() 判断 File 对象代表的文件是否是一个普通文件
boolean createNewFile() 根据File对象,自动创建一个空文件。成功创建后返 true
boolean delete() 根据 File 对象,删除该文件。成功删除后返回 true
String[] list() 返回 File 对象代表的目录下的所有文件名
File[] listFiles() 返回File对象代表的目录下的所有文件,以 File 对象表示
boolean mkdir() 创建File 对象代表的目录
boolean mkdirs() 创建File对象代表的目录,如果必要,会创建中间目录
boolean renameTo(File dest) 进行文件改名,也可以视为我们平时的剪切、粘贴操作
boolean canRead() 判断用户是否对文件有可读权限
boolean canWrite() 判断用户是否对文件有可写权限

请看举例:
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
示例2:
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
上图中通过getAbsolutePath()方法打印出来的目录是按照工作目录 + 当前目录来进行打印的(如果是在idea中运行程序的话,工作目录就是项目所在的目录,如果是在命令行中运行程序的话;工作目录就是命令行当前所在目录;如果程序运行在tomcat中则工作目录是在tomcat下的bin目录;所以工作目录会随着运行方式的不同而发生变化)。
示例三:
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
示例四:
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
注意:createNewFile方法是有可能抛出异常的,比如写入的路径是一个非法路径,比如我们要创建这个文件但是我们对文件所在的目录没有权限操作。
示例五(删除文件,等到程序运行结束的时候才对文件进行删除而非立即删除):
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
有时候我们会在程序运行的时候需要用到临时文件,等待程序结束的时候再把这个临时文件进行删除。
示例六(创建目录):
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习
示例七(文件重命名和文件移动操作):
【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习

以上就是对文件系统的操作,都是通过File类来进行实现的。所以我们呢

本文到这里就结束了,希望友友们可以支持一下一键三连哈。嗯,就到这里吧,再见啦!!!

【Java系列】文件操作详解,Java系列,JavaEE学习专栏,java,文件操作,学习文章来源地址https://www.toymoban.com/news/detail-773648.html

到了这里,关于【Java系列】文件操作详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【JavaEE基础学习打卡03】Java EE 平台有哪些内容?

    📜 本系列教程适用于Java Web初学者、爱好者,小白白。我们的天赋并不高,可贵在努力,坚持不放弃。坚信量最终引发质变,厚积薄发。 🚀 文中白话居多,尽量以小白视角呈现,帮助大家快速入门。 🎅 我是 蜗牛老师 ,之前网名是 Ongoing蜗牛 ,人如其名,干啥都慢,所以

    2024年02月12日
    浏览(47)
  • 【JavaEE基础学习打卡02】是时候了解Java EE了!

    📜 本系列教程适用于 Java Web 初学者、爱好者,小白白。我们的天赋并不高,可贵在努力,坚持不放弃。坚信量最终引发质变,厚积薄发。 🚀 文中白话居多,尽量以小白视角呈现,帮助大家快速入门。 🎅 我是 蜗牛老师 ,之前网名是 Ongoing蜗牛 ,人如其名,干啥都慢,所

    2024年02月12日
    浏览(48)
  • 快给自己充点电,Java SE 完整学习专栏【91篇】,赢在开学起跑线!

    作者主页 :Designer 小郑 作者简介 :Java全栈软件工程师一枚,来自浙江宁波,负责开发管理公司OA项目,专注软件前后端开发、系统定制、远程技术指导。CSDN学院、蓝桥云课认证讲师,全栈领域优质创作者。 JavaSE 是 Java 语言的标准平台和核心技术 ,也被称为Java平台,它提

    2024年02月10日
    浏览(34)
  • 【JAVAEE学习】探究Java中多线程的使用和重点及考点

    ˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好,我是xiaoxie.希望你看完之后,有不足之处请多多谅解,让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN 如需转载还请通知˶⍤⃝˶​ 个人主页:xiaoxieʕ̯

    2024年04月15日
    浏览(36)
  • 【JavaEE】文件操作 —— IO

    文件内容 文件大小 文件路径 文件名称 采用树形结构进行管理。 分为两种:相对、绝对路径。 相对路径:相对于当前位置的路径,以“./xxx.xxx”为标志 绝对路径:以从盘符开始到某一级的路径 输入和输出是以 CPU的角度 进行观察。 输出: 向屏幕上打印,就是打印内容从

    2024年01月21日
    浏览(42)
  • 【Java系列】详解多线程(一)

    个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【Java系列专栏】【JaveEE学习专栏】 本专栏旨在分享学习Java的一点学习心得,欢迎大家在评论区交流讨论💌 在引入多线程之前, 我们先来看一下进程是为了干什么的,

    2024年02月05日
    浏览(38)
  • <JavaEE> 文件IO -- File类和文件操作

    目录 一、文件的概念 二、文件系统 三、文件类型 四、使用 File 类进行文件操作 4.1 File 类中的 pathSeparator 属性 4.2 File 类构造方法 4.3 File 类常用方法 什么是文件? 广义上的“文件”是指抽象化的操作系统中的硬件设备和软件资源,目的是对这些“文件”进行同一的管理。

    2024年02月04日
    浏览(46)
  • 拥抱变化,面向Java17,Java8-18全系列特性详解

    文章目录: Java 8 新特性 Java 9 新特性 Java 10 新特性 Java 11 新特性 Java 12 新特性 Java 13 新特性 Java 14 新特性 Java 15 新特性 Java 16 新特性 Java 17 新特性 Java 18 新特性 💡 文章较长,建议点赞、收藏、评论后慢慢看,合理利用 “ 只看目录功能 ” 当我们大部分Javaer还沉浸在Java 8 的

    2024年01月16日
    浏览(42)
  • 【文件操作与IO】Java中如何操作文件

    目录  Java 中操作文件 File 概述 属性 构造方法 方法 代码示例 文件内容的读写 —— 数据流  InputStream 概述 FileInputStream 概述 利用 Scanner 进行字符读取 OutputStream 概述 利用 OutputStreamWriter 进行字符写入 利用 PrintWriter 找到我们熟悉的方法 代码参考 如何按字节进行数据读 如何按

    2024年02月12日
    浏览(57)
  • 【Java系列】详解多线程(三)—— 线程安全(下篇)

    个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【Java系列专栏】【JaveEE学习专栏】 本专栏旨在分享学习Java的一点学习心得,欢迎大家在评论区交流讨论💌 我们先来看一下什么是内存可见性问题,通过一段代码来进

    2024年02月04日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包