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(控制软件运行次数)

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

转换流

转换流基本用法

序列化流

序列化流

反序列化流

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

字节打印流

相关推荐
阿正呀40 分钟前
Redis怎样实现本地缓存的高效失效通知
jvm·数据库·python
2501_901200531 小时前
mysql如何设置InnoDB引擎参数_优化innodb_buffer_pool
jvm·数据库·python
金銀銅鐵2 小时前
[java] 编译之后的记录类(Record Classes)长什么样子(上)
java·jvm·后端
m0_495496412 小时前
mysql处理复杂SQL性能_InnoDB优化器与MyISAM差异
jvm·数据库·python
forEverPlume3 小时前
PHP怎么使用Eloquent Attribute Composition属性组合_Laravel通过组合构建复杂属性【方法】
jvm·数据库·python
2301_809204703 小时前
mysql在docker容器中如何部署_利用docker-compose快速启动
jvm·数据库·python
2301_815901977 小时前
SQL如何将多行记录聚合成逗号分隔字符串_GROUP_CONCAT技巧
jvm·数据库·python
zjy277777 小时前
Layui tab选项卡如何动态根据ID值进行程序化切换
jvm·数据库·python
m0_602857768 小时前
Redis如何修复槽位分配重叠的脏状态_使用redis-cli --cluster fix工具扫描并修复不一致的Slot
jvm·数据库·python
2301_766283448 小时前
怎样开启phpMyAdmin的操作审计日志_记录每条执行的SQL
jvm·数据库·python