javaEE初阶 — 认识文件

news2025/1/20 13:28:45

文章目录

  • 认识文件
    • 1. 树型结构组织和目录
    • 2. 文件路径(Path)
      • 2.1 绝对路径
      • 2.2 相对路径
    • 3. 文件的类型

认识文件


文件分为 狭义广义 两种
狭义的文件:指的是硬盘上的 文件目录

广义的文件:

泛指计算机中很多的软硬件资源。操作系统,会把很多个硬件设备和软件资源抽象成了文件。
按照文件的方式来统一管理。

我们现在只讨论狭义的文件。



文件除了有数据内容之外,还有一部分信息。
例如 文件名、文件类型、文件大小 等并不作为文件的数据而存在,我们把这部分信息可以视为文件的元信息。

1. 树型结构组织和目录


随着文件越来越多,对文件的系统管理也被提上了日程,如何进行文件的组织呢?
一种合乎自然的想法出现了,就是按照层级结构进行组织 —— 也就是我们数据结构中学习过的树形结构

一种专门用来存放管理信息的特殊文件诞生了,也就是我们平时所谓文件夹(folder) 或者目录(directory) 的概念。






文件夹 和 目录 中保存的其实就是之前提到的关于文件的元信息。
通过一个个文件夹,可以将文件组织起来,更方便的使用它。

2. 文件路径(Path)


之前写的代码主要是靠变量来存储数据的,而变量是存储在内存中的。
现在的文件则是在硬盘上。

每个文件在硬盘上都是有一个具体的 “路径”



上述图片的路径就是 d:/javaEE.jpg (在 windows 上也可以写作 d:\javaEE.jpg

表示一个文件的具体位置路径,就可以使用 / 来分割不同的目录级别。
可以表示为:



d 表示的是盘符
c、d、e 这样的盘符是通过 “硬盘分区” 来的。
每个盘符可以是一个单独个硬盘,也可以是若干个盘符对应一个硬盘。

2.1 绝对路径


从树型结构的角度来看,树中的每个结点都可以被一条从根开始,一直到达的结点的路径所描
述,而这种描述方式就被称为文件的绝对路径。

比如:以 c:d:盘符开头的文件的路径。



上述就是一个 绝对路径

2.2 相对路径


除了可以从根开始进行路径的描述,我们可以从任意结点出发,进行路径的描述,而这种描述方式就被
称为相对路径。

简答理解就是以当前所在目录为基准,以 . 或者 . . 开头(. 有时候可以省略),找到指定的路径。

当前所在目录 称为 工作目录 ,每个程序运行的时候,都有一个工作目录。
(在控制台里通过命令操作的时候,是特别明显的;后来进化到图形化界面了,工作目录就不那么明显了。)




默认工作路径是这个,但是这个工作路径是可以更改的。



举个例子:


假设当前的工作目录是 d:/Gitee ,如果要定位到 javaCode 这个目录就可以表示成 ./javaCode
(./就表示当前的目录)

如果要定位到 “码云工具” 就表示成 ./码云工具


如果要定位到 javaCode 里面的 data-structure,就表示成 ./javaCode/data-structure


如果工作目录有不同,定位到同一个文件的相对路径的写法是不同的。

同样是定位到 javaCode 这里。

  • 如果工作目录是 d:/,相对路径就写作 ./Gitee/javaCode
  • 如果工作目录是 d:/Gitee,相对路径就写作 ./javaCode
  • 如果工作目录是 d:/Gitee/码云工具,相对路径就写作 . ./javaCode
    (. . 表示当前目录的上级目录)
  • 如果工作目录是 d:/Gitee/码云工具/c-language-training-program,相对路径就是 …/…/javaCode

IDEA 的工作路径默认就是当前项目的所在目录。


如果代码中写了一些相对代码的路径,工作路径就是以上述路径为基准。

3. 文件的类型


像 word、exe、图片、视频、音频、源代码、动态库… 这些不同的文件,整体可以归纳为两类:

  • 文本文件(存的是文本,字符串)
    这个文本里存的数据,一定是合法的字符,都是在你指定字符编码的码表之内的数据。
  • 二级制文件(存的是二进制数据,不一定是字符串)
    没有任何限制可以存任何你想要的数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/161375.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2022(一等奖)D926刘家峡库区潜在滑坡InSAR识别与分析

作品介绍 1 应用背景 滑坡是普遍存在于世界各地山区的主要灾害之一,严重威胁着人类的生命财产安全和自然环境。滑坡不但会直接破坏人类生命财产安全和建筑物,而且还会造成堰塞湖等次生灾害,进而对人类的生命财产安全和基础设施等造成二次破坏…

暴力破解 SSH

Kali 的 MSF 终端,对渗透目标主机 的 SSH 服务进行暴力破解。 破解的是否成功取决于字典和目标是否使用弱密码。 一,实验环境 分别是攻击机和靶机(也可是其他目标服务器) 二、利用 SSH 弱密码进行暴力破解 暴力破解最重要的要…

100 道 Linux 笔试题,能拿 80 分就算大神!

本套笔试题共100题,每题1分,共100分。(参考答案在文章末尾) 1.cron 后台常驻程序 (daemon) 用于: A. 负责文件在网络中的共享 B. 管理打印子系统 C. 跟踪管理系统信息和错误 D. 管理系统日常任务的调度 2.在大多数Li…

如何使用无标签数据进行预训练?

一、直观解释 简单来说就是“造目标”。也即人为地去构造一些子任务(论文里的protext task),或者利用一些最基本的公理性常识,去设计“类似监督”的任务。所不同的是,我们引入的“类似监督”的任务通常是用来完成表征…

day13|559.n叉树的最大深度、222.完全二叉树的节点个数

559.n叉树的最大深度 给定一个 N 叉树,找到其最大深度。最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。N 叉树输入按层序遍历序列化表示,每组子节点由空值分隔(请参见示例)。 示例 1: 输入:r…

基于opencv的图像:边缘检测 (完整代码+详细教程)

给出“离散拉普拉斯算子”一般形式的数学推导 离散值的导数使用差分代替: 所以: 以(x, y)为中心点,在水平和垂直方向上应用拉普拉斯算子,滤波器(对应a=1的情况)为:

广告归因-让你彻底弄归因架构实现

这里会引用神策数据很多的介绍,然后进行总结 归因方法 自归因 渠道商帮我们做归因,有的是每个用户打开 app 都回传给渠道商,渠道商自己归因有的如华为是从应用商店安装时,应用商店把归因信息写入到 app, 然后首次安装启动时能从本…

【信息学CSP-J近16年历年真题64题】真题练习与解析 第12题之加工零件

加工零件 描述 凯凯的工厂正在有条不紊地生产一种神奇的零件,神奇的零件的生产过程自然也很神奇。工厂里有 𝑛 位工人,工人们从 1~𝑛编号。某些工人之间存在双向的零件传送带。保证每两名工人之间最多只存在一条传送带。 如果 𝑥 号工人想生产一个被加工到第 𝐿(…

回溯法--旅行售货员问题--排列树

回溯法有点类似于暴力枚举的搜索过程,回溯法的基本思想是按照深度优先搜索的策略,从根节点出发深度搜索解空间树,当搜索到某一节点时,如果该节点可能包含问题的解,则继续向下搜索;反之回溯到其祖先节点&…

【学习笔记】【Pytorch】六、nn.Module的使用

【学习笔记】【Pytorch】六、nn.Module的使用学习地址主要内容一、torch.nn模块概述二、nn.Module类的使用1.使用说明2.代码实现学习地址 PyTorch深度学习快速入门教程【小土堆】. 主要内容 一、torch.nn模块概述 概述:帮助程序员方便执行与神经网络相关的行为。…

微信小程序——WXSS模板样式,rpx,样式导入,全局样式和局部样式,全局配置-window

一.WXSS模板样式1.什么是 wxss WXSS ( WeiXin Style Sheets )是一套样式语言,用于美化 WXML 的组件样式,类似于网页开发中的CSS。2. WXSS 和 CSS 的关系WXSS 具有 CSS 大部分特性,同时, WXSS 还对 CSS 进行了扩充以及修…

73. 风格迁移以及代码实现

摄影爱好者也许接触过滤波器。它能改变照片的颜色风格,从而使风景照更加锐利或者令人像更加美白。但一个滤波器通常只能改变照片的某个方面。如果要照片达到理想中的风格,可能需要尝试大量不同的组合。这个过程的复杂程度不亚于模型调参。 本节将介绍如…

数据导入导出(POI以及easyExcel)

一.概念: 1.场景需求 将一些数据库信息导出为Excel表格 将Excel表格数据导入数据库 大量数据的导入导出操作 常⽤的解决⽅案为:Apache POI与阿⾥巴巴easyExcel2.Apache POI介绍 Apache POI 是基于Office Open XML 标准(OOXML)和M…

96、【树与二叉树】leetcode ——404. 左叶子之和:递归法[先序+后序]+迭代法[先序+层次](C++版本)

题目描述 原题链接:404. 左叶子之和 解题思路 一、递归法 (1)设置一个布尔变量判定(先序遍历) 左孩子一定在每个子树的最左侧,因此设置一个局部参数flag,当每次遍历的是左子树时&#xff0c…

记录一次Oracle Linux7上安装RDBMS 11.2.0.4的问题

参考文档: 文档1 OHASD fails to start on SuSE 11 SP2 on IBM: Linux on System z (Doc ID 1476511.1) As part of the root.sh, roothas.pl or rootcrs.pl is called and an entry is placed in /etc/inittab h1:35:respawn:/etc/init.d/init.ohasd run >/de…

cmake入门之二:调用外部共享库和头文件

cmake入门之二:调用外部共享库和头文件1.创建外部共享库1.1 创建相关文件或文件夹1.1.1 ext目录下的CMakeLists.txt1.1.2 ext目录lib文件夹下1.1.2.1 hello.h1.1.2.2 hello.c1.1.2.3 CMakeLists.txt1.2 编译、安装2.创建当前项目2.1 创建相关文件或文件夹2.1.1 proj…

为什么这么努力,还是赚不到钱?你不能不知道赚钱的三个模型

大部分人赚钱,都是通过能力努力运气,这种需要付出自己的大量时间和精力,并且赚到的钱也是有上限的。小部分人赚钱是通过,个人IP的商业模式来赚钱,并且跟我们传统的生意不一样的是,这个亏钱是有下限的&#…

OpenHarmony轻量级设备xts认证大致流程

因为最近公司在做openharmony开发板xts认证,这里对认证过程和过程中遇到的坑做下记录,也给大家探探路。 1. 开发板适配 OpenHarmony轻量系统的移植比较简单,代码中解耦做得非常好。从代码的设计理念上来看,移植主要是3部分的内容…

.vscode/extensions.json和setting.json 是项目用到的插件推荐列表和设置

文章目录前言一、extensions.json安装推荐插件编辑推荐插件二、setting.json总结前言 在前端项目,文件目录中存在.vscode文件夹,文件夹下一般存在两个文件extensions.json和setting.json。作用是保持所有开发者安装了相同的插件和相同的配置&#xff0c…

访问学者J1签证通常准备那些材料?

访问学者J1签证通常准备那些材料?知识人网小编马上整理一下分享出来作为参考:材料准备1、VISA部分:护照,护照照片,160确认页,签证费收据两联都带,DS2019,D7002,sevis费收…