更多 Java IO & NIO方面的文章,请参见文集《Java IO & NIO》
字符集 Charset Java NIO 提供
字符集 Charset:字符的集合,每个字符 char 对应一个整数编码,即字节序列。
系统默认字符集:
System.out.println(Charset.defaultCharset()); // 输出 UTF-8
常见的字符集:
- ASCII
- Unicode 支持中文
- UTF-8 支持中文
- ISO-8859-1
- GB2312 支持中文
字符集的编码与解码:
public static void main(String[] args) throws Exception {
Charset cs = Charset.forName("GB2312");
// 将 String 或者 CharBuffer 转换为 ByteBuffer
ByteBuffer bb = cs.encode("你好");
// 将 ByteBuffer 转换为 CharBuffer
CharBuffer s = cs.decode(bb);
System.out.println(s);
}