1.转换流的字符编码
InputStreamReader和OutputStreamWriter
2.字符编码
编码:字符串变成字节数组。
String-->byte[]; str.getBytes(charsetName);
解码:字节数组变成字符串。
byte[] -->String: new String(byte[],charsetName);
代码图例:
解错码时再重新编一次拿到字节数组后,再按正确方式解码。
注意:如果是用gbk编码解码用的是utf-8解,解错后不能按此原理重新解码了。
特例:联通 因为其字节数组默认是gbk但与utf-8编码特点相同会默认按照utf-8来编码,所以会出现错误乱码。
拿到编码的最低四位的代码图例:
3.练习
有五个学生,每个学生有3门课的成绩,
从键盘输入以上数据(包括姓名,三门课成绩),
输入的格式:如:zhagnsan,30,40,60计算出总成绩,
并把学生的信息和计算出的总分数高低顺序存放在磁盘文件"stud.txt"中。
1,描述学生对象。
2,定义一个可操作学生对象的工具类。
思想:
1,通过获取键盘录入一行数据,并将该行中的信息取出封装成学生对象。
2,因为学生有很多,那么就需要存储,使用到集合。因为要对学生的总分排序。
所以可以使用TreeSet。
3,将集合的信息写入到一个文件中。
代码参照:day21\StudentInfoTest。java