JAVA基础进阶(十)

一、File类常用的API

File类的对象可以用来表示文件或者文件夹,下面是File类常用的API。

1.1、File类判断文件类型、获取文件信息功能

代码中的体现:

1.2、File类的创建和删除方法

代码中的体现:

1.3、文件夹遍历方法

代码中的体现:

二、字符集

字符集(Character set)是多个字符的集合,由于各个国家的文字和符号有所不同,所以就有了不同的字符集。

常见的字符集有GBK、UTF-8、ASCII字符集

GBK字符集中一个字母占1个字节,一个汉字占2个字节,

UTF-8字符集中一个字母占1个字节,一个汉字3个字节。

三、编码和解码

任何字符都不是直接存储在计算机中的,而是按照一定规则转换为二进制进行存储的,把字符转换为二进制的过程叫做字符编码。

二进制转换为字符的过程叫做字符解码。

四、IO流

IO流是用来处理数据的读和写的,按照流向分为输入流和输出流,输入流是读数据到内存,输出流是写数据到磁盘。

4.1、IO流体系

按照读写的数据单位分为字节流、字符流。字节流:以字节为单位,读写。字符流:以字符为单位,读写。

4.2、字节流和字符流的使用

4.2.1、字节输入流在代码中的使用:

4.2.2、字符输入流在代码中的使用:

字符输入流和字节输入流使用时几乎一模一样,唯一的不同在于读取的数据单位为字符流(使用字节流读取中文的时候可能会造成乱码,使用字符流可以避免这种情况)

4.2.3、字节输出流在代码中的使用:

4.2.4、字符输出流在代码中的使用:

4.2.5、使用字节输入流、字节输出流完成复制

使用字节输入流读取a.txt文件中的内容,再使用字节输出流,将读取到的内容写到b.txt中。

五、缓冲流

5.1、缓冲流概述

缓冲流也称为高效流、或者高级流。之前学习的字节流、字符流可以称为原始流(基础流)。

缓冲流可以提高原始字节流、字符流读写数据的性能。缓冲流分为字节缓冲输入流、字节缓冲输出流、字符缓冲输入流、字符缓冲输出流。

5.2、字节缓冲流的基本使用

使用字节缓冲输入流、字节缓冲输出流完成文件复制

5.3、缓冲流的性能分析

使用原始字节流是首先将数据源读取到字节流,字节流再每次1KB的速度与内存交互。

字节缓冲输入流自带了8KB缓冲池,并且缓冲池位于内存中,这样内存读取数据就是从缓冲池中一次读取8KB,所以读取速度回快很多。同理字节缓冲输出流也自带了8KB缓冲池,位于内存中,这样每次写数据也会快很多。(字符缓冲流也是同样的原理)

5.4、字符缓冲流的基本使用

只是在BufferedReader和BufferedWriter中新增了readLine和newLine方法。

代码中的使用:

缓冲流的使用可以参考:

Java IO流 - 缓冲流的详细使用介绍_字节缓冲流_学全栈的灌汤包的博客-优快云博客

六、Java对象的序列化和反序列化

序列化:将数据结构或对象转换成二进制字节流的过程

反序列化:将在序列化过程中所生成的二进制字节流的过程转换成数据结构或者对象的过程

若某个类实现了 Serializable 接口,该类的对象就是可序列化的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值