IO流.java

01-IO流的概述

02-IO流的体系

字节流

字节输出流基本用法

字节输出流写出数据的细节

字节输出流写出数据的三种方式

可以输入整数和字节数组

输入整数数据类型时,惠子哦对那个把数字变成asc表中的对应的字母

换行和续写

这里只创建了一个字符输出流没关闭之前可以重复使用write,如果重新再创建字符输出流就会清空了

每次程序运行都会进行一次该书写,第一次运行是写入,第二次运行就是续写了

字节输入流的基本用法

字节输入流读取数据的细节

字节输入流循环读取

只能说跟迭代器的指针一样,不会复位,每一调用都会获取当前数据,然后指针向后移动一位

两个代码的区别是是否有第三方变量b

如果由第三方变量b,就是先判断再输出

如果没有第三方变量b,就是先输出再判断(因为先打印出负一再进行判断的)

文件拷贝的基本代码

文件拷贝的弊端和解决方案

后面没有数据了,所以返回之前字节数组的内容

每次在装数据的时候会尽可能的装满(先用fileinputstream创建对象,在用这个对象调用read方法,参数为数组,表示一次性装满一个数组,装不满的时候,用剩余的最后的字符覆盖掉前面的一部分,后面没有覆盖到的地方不变)

read里的指针在移动的时候遇到没有数据的时候会停止运动

导致数组里的字符不变

文件拷贝改写

IO流中不同JDK版本捕获异常的方式

字符集

字符集详解(ASCII,GBK)

字符集详解(Unicode)

红色的是系统固定的,黑色的字补充对应的数字

用来识别的二进制比特位一共占八位,汉字识别的比特位占十六个比特位,两个字节

为什么会有乱码?

因为是记事本读取的,而记事本写入和读取都是用的同一套编码规则

Java中编码和解码的代码实现

字符输入流-空参read方法详解

字符输入流-有参read方法详解

system.out.,println 就是打印一次换行一次

读到说的时候,正好读的是\n和说,所以说是自己单独一行

字符流输出流写出数据

字符输入流的底层原理超详解

字符输出流的底层原理超详解

字符流会先写到缓冲区当中,当缓冲区装满时会自动到内存中,或者手动刷新,关流等

综合练习

综合练习01(拷贝文件夹)

高级流

缓冲流

字节缓冲流拷贝文件(一次读写一个字节)

字节缓冲流拷贝文件(一次读写一个字节数组)

字节缓冲流的读写原理

字符缓冲流

综合练习

综合练习01(四种拷贝方式效率对比)
综合练习02(恢复出师表的顺序)
综合练习03(控制软件运行次数)

变量在储存到文件中以后仍然保存着变量的性质,虽然从外表上来看只是一些字符

转换流

转换流基本用法

序列化流

序列化流

反序列化流

序列化流和反序列化流的使用细节

字节打印流

相关推荐
mister_guo11 小时前
JVM 内存管理原理及生产配置实战:从“参数能启动”到“内存可控”
java·jvm
wear工程师2 天前
Java 类初始化到底何时触发?别把加载、连接和 static 执行混在一起
java·jvm
程序员雷欧2 天前
线上频繁触发各种 GC 的原因排查与处理指南
java·jvm·算法
wuminyu2 天前
JVM利用io_uring优化堆外内存性能原理剖析
java·linux·c语言·jvm·c++
147API4 天前
Python批量生成蒸馏数据,并发、重试、幂等和断点续跑
开发语言·jvm·python
wuminyu4 天前
JDK21解决虚拟线程IO阻塞原理剖析
java·linux·c语言·jvm·c++
sunywz4 天前
【JVM】(8)JVM调优实战及常量池详解
jvm
wuminyu4 天前
虚拟线程底层ForkJoinPool的工作窃取算法机制
java·linux·c语言·jvm·c++
leisoo80974 天前
股票数据本地化存储实战:JSON、数据库与列式存储的方案对比
jvm·数据库·json
SamChan905 天前
PDF翻译中的并发控制:用Semaphore防止API限流与资源耗尽
java·jvm·pdf