javaIO

file类

一个File类的对象可以表示一个具体的文件或目录

mkdir

创建单级文件夹

mkdirs

创建多级文件夹

delete

删除一个文件夹时,文件夹里面必须是空的

listfiles

将文件夹的子集放到一个file类型的数组中

输入及输出的概念

输入input

输出output

把java中用于对文件输入和输出的类称为流,有一些类用于输入数据的,有一些类用于输出数据的,有一些类是以字节为单位读取数据的,有一些类是以字符为单位读取数据的

字节流和字符流

字节流:读取时以字节为单位可以读取任意的文件,mp3

字符流:读取时以字符为单位可以读取文本文档

节点流与处理流

节点流:直接封装数据(最基础去读数据的流)

处理流:封装的是一个节点流对象,可以提供缓冲功能(缓冲字节输入流,默认缓冲区大小是8292个字节,也可以自己定义大小)

输入输出节点字符流

只能读文本文件,会将读到的字节结合编码表转换为一个字符编码

对象输入输出流---对象序列化

把java中的对象输出到文件中,从文件中能够把对象输入到程序中

为什么要把对象输出到文件中?

数据存储在对象中,对象是在内存中存储,一旦程序运行结束,对象就会销毁,有时需要将对象的信息长久保存,就要将对象输出到文件中,长久保存,把对象输出到文件的过程也成为对象的序列化,把对象从文件输入到程序的过程成为对象的反序列化,反序列时会生成一个新的对象,这也是创建对象的一种方式

(如果一个类需要被序列化到文件中,那么这个类需要实现Serializable接口,实现后,会自动的为该类生成一个序列化编号,编号是类的唯一标识,但是自动生成的这个编号在类信息改变后,会重新为类生成一个编号,这时,可以在类中显示的生成一个编号,这样即使类信息改变,编号也不会改变)

下图是IO结构图

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

pyinstaller打包多线程pyqt5程序后,报错,反复弹窗等问题

报错1: Traceback (most recent call last): File “MPL.py”, line 502, in File “Lib\site-packages\PyInstaller\hooks\rthooks\pyi_rth_multiprocessing.py”, line 45, in _freeze_support ValueError: not enough values to unpack (expected 2, got 1) 报…

STM32学习笔记(10_3)- 软件I2C读写MPU6050

无人问津也好,技不如人也罢,都应静下心来,去做该做的事。 最近在学STM32,所以也开贴记录一下主要内容,省的过目即忘。视频教程为江科大(改名江协科技),网站jiangxiekeji.com 本期开…

分布式之分布式事务详解

分布式事务与实战运用 什么是分布式事务? 业务场景:用户A转账100元给用户B,这个业务比较简单,具体的步骤: 1、用户A的账户先扣除100元 2、再把用户B的账户加100元 如果在同一个数据库中进行,事务可以保证…

C语言之Linux内核回调函数写法(八十九)

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

论文阅读,Accelerating the Lattice Boltzmann Method(五)

目录 一、Article:文献出处(方便再次搜索) (1)作者 (2)文献题目 (3)文献时间 (4)引用 二、Data:文献数据(总结归纳,方便理解&am…

Nginx的反向代理

Nginx的反向代理 location ^~ /aaa {proxy_pass http://192.168.15.78/; } 1. 跨域 2.Nginx 代理服务器缓存 3.Nginx 负载均衡 4. 动静分离 Nginx的跨域 跨源资源共享 (CORS) 是一种机制,它使用额外的 HTTP 标头让用户代理获得访问来自不同来域的服务器上选定资…

LongAdder 和 AtomicLong

有幸看到一篇关于这个讲解 2个类的讲解,自己也归纳总结一下。 一、解析 看源码底层会发现实现机制不一样,当然这个也是必须的 LongAdder 点进去之后会发现,CAS 它是一个CAS的实现类。至于Cell类JVM提供的内置函数 官方说法是:…

Python版【植物大战僵尸 +源码】

文章目录 写在前面:功能实现环境要求怎么玩个性化定义项目演示:源码分享Map地图:Menubar.py主菜单 主函数:项目开源地址 写在前面: 今天给大家推荐一个Gtihub开源项目:PythonPlantsVsZombies,翻译成中就是…

小程序开发调试指南

调试指南 一、Vconsole 一些线上问题需要在真机中进行调试或日志输出,为方便查看前端日志的输出,App 端提供了调试模式, 打开调试模式后面板界面中会显示 vConsole 按钮,点击后可打开手机端 vConsole界面查看日志输出。 1.如何开启 点击小…

JumpServer 堡垒主机

JumpServer 堡垒机帮助企业以更安全的方式管控和登陆各种类型的资产 SSH:Linux/Unix/网络设备等Windows:Web方式连接/原生RDP连接数据库:MySQL、Oracle、SQLServer、PostgreSQL等Kubernetes:连接到K8s集群中的PodsWeb站点&#x…

复现黄金票据

一、搭建环境 搭建域环境可以点击这个查看步骤 在这里面monowall的配置查看 二、实验步骤 拿到域名 拿到SID 使用mimikatz拿到krbtgt用户的哈希 删除票据 也可以使用mimikatz.exe删除票据,命令是kerberos::purge 伪造票据 拿到域控 伪造成功

物联网实战--入门篇之(六)嵌入式-WIFI驱动(ESP8266)

目录 一、WIFI简介 二、基础网络知识 三、思路讲解 四、代码分析 4.1 状态机制 4.2 客户端连接 4.3 应用数据接收处理 4.4 数据发送 4.5 主函数调用 4.6 网络连接ID分配 五、总结 一、WIFI简介 WIFI在我们生活中太常见了,手机电脑都可以用WiFi连接路由器进行上…

MySQL核心命令详解与实战,一文掌握MySQL使用

文章目录 文章简介演示库表创建数据库表选择数据库删除数据库创建表删除表向表中插入数据更新数据删除数据查询数据WHERE 操作符聚合函数LIKE 子句分组 GROUP BY HAVINGORDER BY(排序) 语句LIMIT 操作符 分页查询多表查询-联合查询 UNION 操作符多表查询-连接的使用-JOIN语句编…

从0到1手把手撸码搭建后台管理系统

从0到1手把手撸码搭建后台管理系统 第一章:系统介绍开发目的与过程 要使用 Vue3 搭建后台,你可以按照以下步骤进行: 安装 Vue3:使用包管理工具(如 npm 或 yarn)安装 Vue3。选择构建工具:选择一个适合的构…

Spring之循环依赖

什么是循环依赖? 依赖的相互引用,如下列的这种形式 Component public class A {Autowiredprivate B b;}Component public class B {Autowiredprivate A a; } Spring是如何解决循环依赖的 Spring是通过三级缓存来解决循环依赖 singletonObjects : 单例bean,已经实例化,完成…

非周期连续函数的傅里叶变换

首先 我们把一个非周期信号扩展成一个周期信号 然后用傅里叶级数展开 也可以得到对应的级数系数 利用周期趋向于无穷大 可以把傅里叶级数展开就变成了一个积分 而神奇的是积分里其实还有一个积分 这样我们就得到了傅里叶变换对 我们把里面的积分成为函数的傅里叶变换 把外面…

C语言交换二进制位的奇数偶数位

基本思路 我们要先把想要交换的数的二进制位给写出来假如交换13的二进制位,13的二进制位是 0000 0000 0000 0000 0000 0000 0000 1101然后写出偶数位的二进制数(偶数位是1的) 1010 1010 1010 1010 1010 1010 1010 1010然后写出奇数位的二进…

Mac通过Idea启动Tomcat时出现Cannot run program xxx/catalina.sh 错误

问题描述 Mac通过Idea启动Tomcat时出现Cannot run program xxx/catalina.sh错误,详细如下: Error running Tomcat9 Cannot run program "/Users/xxx/Desktop/work/devtools/apache-tomcat-9.0.19/bin/catalina.sh" (in directory "/U…

算法设计课第一周(排序算法的效率分析)

实验1 排序算法的效率分析 一、【实验目的】 (1)复习排序算法的实现过程; (2)设计平均与最坏情况下时间复杂度的数据环境并理解相关含义; (3)初步了解算法时间复杂度的分析方法。…

FlashFace:一种高保真身份保存的人类形象个性化方法

FlashFace技术是由香港大学、阿里巴巴集团、蚂蚁集团共同研发的一项实用工具,用户可以通过提供一张或几张参考面部图像和文本提示,就可以轻松地即时个性化自己的相片。 与现有的人像定制方法相比,FlashFace方法具有更高保真度的身份保留xi性…