目录
String(byte[],String encoding)
字符编码
计算机如何存储字符
计算机中存储的都是0101二进制,我们称之为字节
计算机中 各种文字,标点,我们称之为:字符
当计算机存储字符时,会将 字符 变成 字节保存。这个过程称为编码
当我们需要展示字符时:会将 字节 变成 字符 展示。这个过程称为解码
字符和字节之间的转换不是毫无规律的,是有专门的字典来一一对应。这样的字典我们成为码表
Java中字符存储&读取
我们可以把 char 类型强制转为 int 类型,这样我们就能知道对应字符在 ASCII 码表的位置
Java 中的 char 类型是可以与 int 类型转换的
常见字符编码(又名:码表,字符集)
ASCII
最早的码表。
因其他码表都包含 ASCII 码表,又叫基础码表
美国人的编码,其他码表都包含。ASCII 码表包含 26 个字母大小写、以
及!@#$%^&*()_+=-~等基本符号,不支持中文
ISO-8859-1
拉丁码表(Latin1),是西方通用码表,在 window 中称为 ANSI 字符集。(包含
ASCII 码表,但不包含中文)
GB2312
国标码,支持简体中文。(包含 ASCII 码表和简体中文)
GBK
国标扩展码,支持繁体中文。(包含 GB2312 和繁体中文)
GB18030
最新国标码,兼容 GBK,支持少数名族文字以及其他特殊字符。(包含 GBK
和少数民族文字以及其他特殊字符)
BIG-5
大五码,繁体编码表(港台专用)
UTF-8
万国码,所有国家都使用。汉字有 2-4 个字节组成,一般是 3 个字节。(全球
所有文字都支持)
String类的编码&解码
当向计算机存储字符时,会将 字符 变成 字节 保存。这个过程称为编码
当我们需要展示字符时:会将 字节 变成 字符 展示 。 这个过程称为解码
getBytes(String encoding)
将字符串以指定码表,编码为字节数组
即字符变字节
参数:码表名”utf-8”或”gbk”
返回:byte[]
String(byte[],String encoding)
将字节数组以指定码表,解码为字符串
即字节(数字)变字符
参数:1、字节数组
2、码表名”utf-8”或”gbk”
返回:String
乱码
乱码原因:编码和解码采用的码表不同
避免乱码:确保编码和解码使用相同的码表。
文件操作-File类
File类概述
Java中提供了java.io.File 类,用来代表文件或目录
注意:
该类用来进行文件或目录的操作
该类本身没有对文件或目录的数据读写功能
(不带扩展名的是目录,带扩展名的是文件)
File类入门案例
格式:new File(String 路径);
路径注意:
1、 路径书写时,\\和/是同一个效果,建议使用\\ 2、 路径分为:
绝对路径:带盘符的完整路径
相对路径:不带盘符的路径(相对路径默认从 IDEA 项目根目录开始)
File类方法介绍
判断方法
boolean exists() 判断文件或目录是否存在
boolean isFile() 判断对象是否是文件
boolean isDirectory() 判断对象是否是目录
boolean isHidden() 判断对象是否为隐藏文件或目录