关于Java编码与解码,我总结了一下:
编码:string.getBytes("charset")过程:
1、通过string中每个字符的unicode序号,在charset中寻找字符
2、charset中有该字符,则找到,否则为“未知字符”
2、对找到的字符或“未知字符”,得其在charset的byte序列
解码:new String(byte[] bytes,"charset")过程:
1、使用charset字符集及其编码规则,转换bytes数组中的byte序列为charset字符集中的字符,
2、能转换的bytes,得到其对应的字符,不能转化的bytes,用charset中的“未知字符”代替
2、对每个字符,或“未知字符”,找到其在unicode字符集中对应的unicode序号
不对的地方还请大家指正、讨论,谢谢!