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

JAVAEE初阶 文件IO(一)

这里写目录标题

    • 一. 计算机中存储数据的设备
      • 1.1 CPU
      • 1.2 内存
      • 1.3 硬盘
      • 1.4 三种存储的区别
    • 二.文件系统
      • 2.1 相对路径
      • 2.2 绝对路径
      • 2.3 .和..的含义
      • 2.4 例子
      • 2.5 everything工具
    • 三.文件
      • 3.1 文本文件
      • 3.2 二进制文件
    • 四. JAVA对于文件的API
      • 4.1 getParent getName getPath getAbsolutePath方法
      • 4.2 exists isFile isDirectory
      • 4.3 createNewFile delete deleteOnExit方法
      • 4.4 list listFiles
      • 4.5 mkdir mkdirs

一. 计算机中存储数据的设备

1.1 CPU

CPU是Central Processing Unit中央处理器的简称,作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。CPU 自产生以来,在逻辑结构、运行效率以及功能外延上取得了巨大发展。

1.2 内存

内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定运行

1.3 硬盘

硬盘是电脑主要的存储媒介之一,由一个或者多个铝制或者玻璃制的碟片组成。碟片外覆盖有铁磁性材料

1.4 三种存储的区别

在这里插入图片描述

二.文件系统

2.1 相对路径

所谓的相对目录,就是先指定一个当前目录,以此为基准,来找到相应的目录

2.2 绝对路径

从树的根节点出发(盘符) ,一层一层的找到相应的目录.

2.3 .和…的含义

一个.就代表当前目录
两个.代表上一级目录

2.4 例子

我们在电脑中创建一个test.txt的文件,我的目录是D:\test\io
假设我们当前的目录是D:\test\io 那么我们要找到该文件相对路径是***./test.txt***
假设我们当前的目录是D:\test 那么找到文件的相对路径就是 ./io/test.txt
假设我们当前的目录是D:\test\io\appData 那么找到该文件路径就是***…/test.txt***

2.5 everything工具

everything工具讲究的是用"空间换时间",它会在安装之时,将电脑的内容全部遍历一次,将信息全部建立,存储到自己的数据库中, 在以后搜索的时候,就不是遍历,而是查找,效率高很多, 缺点就是会窥探自己电脑的信息.

三.文件

3.1 文本文件

所谓的文本文件,就是按照字符串的内容来理解文件内容.文件中存储的数据都按照码表有据可查, 那么此时就是文本文件.

3.2 二进制文件

如果你用一个记事本打开是正常的内容,就不是二进制文件.是文本文件
我们用JDK中的工具包来演示一下过程
在这里插入图片描述
上述是无限的乱码,说明是二进制文件.

四. JAVA对于文件的API

在这里插入图片描述

4.1 getParent getName getPath getAbsolutePath方法

我们先用比较简单的绝对路径来演示

在这里插入图片描述在这里插入图片描述

getParent: 此方法是获取的父目录
getName: 此方法是获得纯对象名称,也就是自己的名字
getPath: 返回名字的文件路径
getAbsolutePath : 获得File对象的绝对路径

相对路径来演示

在这里插入图片描述
在这里插入图片描述

我们可以发现,在参数为绝对路径时,返回File对象的文件路径和绝对路径相同,但是在参数为相对路径时,却不一样了.
getAbsolutePath中,返回的是JAVA本包所在文件的路径,这是相对路径和绝对路径在此方法上的不同.

4.2 exists isFile isDirectory

在这里插入图片描述在这里插入图片描述

exists 判断此文件是否存在
isFile 判断是否为文件,很显然是一个文件
isDirectory 判断是否为目录,它只是一个普通的文件,并非是目录

4.3 createNewFile delete deleteOnExit方法

在这里插入图片描述

在使用了createNewFile方法之后,会在包的栏出现一个txt文件.
在这里插入图片描述
在我们执行了delete操作之后.
就会删除掉这个文件.

4.4 list listFiles

在这里插入图片描述
在这里插入图片描述

list 是以String数组为前提 ,返回file下的所有文件名.
listFiles是以file对象为前提,返回所有文件.

在这里插入图片描述在这里插入图片描述

4.5 mkdir mkdirs

mkdir 创建file对象的目录
mkdirs 创建file对象的多级目录

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

相关文章:

JAVAEE初阶 文件IO(一)

这里写目录标题 一. 计算机中存储数据的设备1.1 CPU1.2 内存1.3 硬盘1.4 三种存储的区别 二.文件系统2.1 相对路径2.2 绝对路径2.3 .和..的含义2.4 例子2.5 everything工具 三.文件3.1 文本文件3.2 二进制文件 四. JAVA对于文件的API4.1 getParent getName getPath getAbsolute…...

使用WAF防御网络上的隐蔽威胁之CSRF攻击

在网络安全领域,除了常见的XSS(跨站脚本)攻击外,CSRF(跨站请求伪造)攻击也是一种常见且危险的威胁。这种攻击利用用户已经验证的身份在没有用户知情的情况下,执行非授权的操作。了解CSRF攻击的机…...

如何从 Keras 中的深度学习目录加载大型数据集

一、说明 数据集读取,使用、在磁盘上存储和构建图像数据集有一些约定,以便在训练和评估深度学习模型时能够快速高效地加载。本文介绍Keras 深度学习库中的ImageDataGenerator类等工具自动加载训练、测试和验证数据集。 二、ImageDataGenerator加载数据集…...

【大数据】Flink 详解(八):SQL 篇 Ⅰ

《Flink 详解》系列(已完结),共包含以下 10 10 10 篇文章: 【大数据】Flink 详解(一):基础篇【大数据】Flink 详解(二):核心篇 Ⅰ【大数据】Flink 详解&…...

如何从命令行运行testng.xml?

目录 创建一个新的java项目并从命令行运行testng.xml 使用命令行运行XML文件 从命令行运行现有maven项目的XML文件 在这篇文章中,我们将使用命令行运行testng.xml。有多种场景需要使用命令行工具运行testng.xml。也许您已经创建了一个maven项目,现在想…...

MongoDB-数据库文档操作(2)

任务描述 文档数据在 MongoDB 中的查询和删除。 相关知识 本文将教你掌握: 查询文档命令;删除文档命令。 查询文档 我们先插入文档到集合 stu1 : document([{ name:张小华, sex:男, age:20, phone:12356986594, hobbies:[打篮球,踢足球…...

文件包含介绍

本地文件包含 常见的文件包含漏洞的形式为 <?php include("inc/" . $_GET[file]); ?> 考虑常用的几种包含方式为 同目录包含file.htaccess目录遍历?file…/…/…/…/…/…/…/…/…/var/lib/locate.db日志注入?file…/…/…/…/…/…/…/…/…/var/log/a…...

C语言——小细节和小知识9

一、大小端字节序 1、介绍 在计算机系统中&#xff0c;大小端&#xff08;Endianness&#xff09;是指多字节数据的存储和读取顺序。它是数据在内存中如何排列的问题&#xff0c;特别是与字节顺序相关。C语言中的数据存储大小端字节序指的是在内存中存储的多字节数据类型&…...

uni-app基础详解(组件、弹窗、数据缓存、页面跳转)

uni-app基础详解&#xff08;组件、弹窗、数据缓存、页面跳转&#xff09; uni-app组件scroll-viewswipertext 文本button 按钮input 输入框radio 单选checkbox 多选picker 选择器slider 滑块textarea 文本域 弹窗提示框 uni.showLoading提示弹窗 uni.showToast确定取消框 uni.…...

LabVIEW模拟荧光显微管滑动实验

LabVIEW模拟荧光显微管滑动实验 在现代生物医学研究中&#xff0c;对微观生物过程的精准模拟和观察至关重要。本案例展示了如何利用LabVIEW软件和专业硬件平台&#xff0c;创新地模拟荧光显微管在滑动实验中的动态行为&#xff0c;这一过程不仅提升了实验效率&#xff0c;还为…...

Springboot项目:解决@Async注解获取不到上下文信息问题

问题描述 springboot项目中&#xff0c;需要使用到异步调用某个方法&#xff0c;此时 第一个想到的就是 Async 注解&#xff0c;但是 发现 方法执行报错了&#xff0c;具体报错如下&#xff1a; java.lang.NullPointerExceptionat com.ruoyi.common.utils.ServletUtils.getRe…...

国内镜像:极速下载编译WebRTC源码(For Android/Linux/IOS)(二十四)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只…...

ThinkPHP为什么用PHP+Swoole协程模式部署运行

看很多ThinkPHP框架的程序商城等系统&#xff0c;现在都用PHPSwoole协程来运行。在说Swoole前我们先了解下传统PHP模式。 PHP-FPM 的对象常驻内存问题 互联网发展早期&#xff0c;大部分项目的业务逻辑并没有那么复杂&#xff0c;技术生态相对比较简单&#xff0c;也没有 Com…...

Vulnhub-tr0ll-1

一、信息收集 端口收集 PORT STATE SERVICE VERSION 21/tcp open ftp vsftpd 3.0.2 | ftp-anon: Anonymous FTP login allowed (FTP code 230) |_-rwxrwxrwx 1 1000 0 8068 Aug 09 2014 lol.pcap [NSE: writeable] | ftp-syst: | STAT: | FTP …...

服务器和电脑有啥区别?

服务器可以说是“高配的电脑”&#xff0c;两者都有CPU、硬盘、电源等基础硬件组成&#xff0c;但服务器和电脑也是有一定区别的&#xff0c;让小编带大家了解一下吧&#xff01; #秋天生活图鉴# 1、稳定性需求不同&#xff1a;服务器是全年无休&#xff0c;需要高稳定性&…...

C语言——编译和链接

&#xff08;图片由AI生成&#xff09; 0.前言 C语言是最受欢迎的编程语言之一&#xff0c;以其接近硬件的能力和高效性而闻名。理解C语言的编译和链接过程对于深入了解其运行原理至关重要。本文将详细介绍C语言的翻译环境和运行环境&#xff0c;重点关注编译和链接的各个阶段…...

Kubernetes (K8S) 3 小时快速上手 + 实践

1. Kubernetes 简介 k8s即Kubernetes。其为google开发来被用于容器管理的开源应用程序&#xff0c;可帮助创建和管理应用程序的容器化。用一个的例子来描述&#xff1a;"当虚拟化容器Docker有太多要管理的时候&#xff0c;手动管理就会很麻烦&#xff0c;于是我们便可以通…...

如何画出优秀的系统架构图-架构师系列-学习总结

--- 后之视今&#xff0c;亦犹今之视昔&#xff01; 目录 早期系统架构图 早期系统架构视图 41视图解读 41架构视图缺点 现代系统架构图的指导实践 业务架构 例子 使用场景 画图技巧 客户端架构、前端架构 例子 使用场景 画图技巧 系统架构 例子 定义 使用场…...

VR转接器:打破界限,畅享虚拟现实

你是否曾梦想过踏入另一个世界&#xff0c;体验那种仿佛置身其中的感觉&#xff1f;随着科技的飞速发展&#xff0c;虚拟现实&#xff08;VR&#xff09;已经成为了现实。而VR转接器&#xff0c;正是让你畅享虚拟现实的关键所在。 添加图片注释&#xff0c;不超过 140 字&…...

C++学习笔记——用C++实现树(区别于C)

树是一种非常重要的数据结构&#xff0c;它在计算机科学中的应用非常广泛。在本篇博客中&#xff0c;我们将介绍树的基本概念和C中如何实现树。 目录 一、树的基本概念 2.C中实现树 2.1创建一个树的实例&#xff0c;并向其添加节点 2.2三种遍历方式的实现代码 3.与C语言相…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

git: early EOF

macOS报错&#xff1a; Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/ remote: Enumerating objects: 2691797, done. remote: Counting objects: 100% (1760/1760), done. remote: Compressing objects: 100% (636/636…...

用鸿蒙HarmonyOS5实现中国象棋小游戏的过程

下面是一个基于鸿蒙OS (HarmonyOS) 的中国象棋小游戏的实现代码。这个实现使用Java语言和鸿蒙的Ability框架。 1. 项目结构 /src/main/java/com/example/chinesechess/├── MainAbilitySlice.java // 主界面逻辑├── ChessView.java // 游戏视图和逻辑├──…...

上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式

简介 在我的 QT/C 开发工作中&#xff0c;合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式&#xff1a;工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...

基于鸿蒙(HarmonyOS5)的打车小程序

1. 开发环境准备 安装DevEco Studio (鸿蒙官方IDE)配置HarmonyOS SDK申请开发者账号和必要的API密钥 2. 项目结构设计 ├── entry │ ├── src │ │ ├── main │ │ │ ├── ets │ │ │ │ ├── pages │ │ │ │ │ ├── H…...

【51单片机】4. 模块化编程与LCD1602Debug

1. 什么是模块化编程 传统编程会将所有函数放在main.c中&#xff0c;如果使用的模块多&#xff0c;一个文件内会有很多代码&#xff0c;不利于组织和管理 模块化编程则是将各个模块的代码放在不同的.c文件里&#xff0c;在.h文件里提供外部可调用函数声明&#xff0c;其他.c文…...

aurora与pcie的数据高速传输

设备&#xff1a;zynq7100&#xff1b; 开发环境&#xff1a;window&#xff1b; vivado版本&#xff1a;2021.1&#xff1b; 引言 之前在前面两章已经介绍了aurora读写DDR,xdma读写ddr实验。这次我们做一个大工程&#xff0c;pc通过pcie传输给fpga&#xff0c;fpga再通过aur…...

NineData数据库DevOps功能全面支持百度智能云向量数据库 VectorDB,助力企业 AI 应用高效落地

NineData 的数据库 DevOps 解决方案已完成对百度智能云向量数据库 VectorDB 的全链路适配&#xff0c;成为国内首批提供 VectorDB 原生操作能力的服务商。此次合作聚焦 AI 开发核心场景&#xff0c;通过标准化 SQL 工作台与细粒度权限管控两大能力&#xff0c;助力企业安全高效…...

基于微信小程序的作业管理系统源码数据库文档

作业管理系统 摘 要 随着社会的发展&#xff0c;社会的方方面面都在利用信息化时代的优势。互联网的优势和普及使得各种系统的开发成为必需。 本文以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c;它主要是采用java语言技术和微信小程序来完成对系统的…...

【电路笔记】-变压器电压调节

变压器电压调节 文章目录 变压器电压调节1、概述2、变压器电压调节3、变压器电压调节示例14、变压器电压调节示例25、变压器电压调节示例36、总结变压器电压调节是变压器输出端电压因连接负载电流的变化而从其空载值向上或向下变化的比率或百分比值。 1、概述 电压调节是衡量变…...