两个方法写出的16进制码分别是
DataOutputStream的writeUTF():00 01 61 00 01 62
OutputStreamWriter的write():61 62
经个人分析,writeUTF()写出一个UTF-8编码的字符串前面会加上2个字节的长度标识,已标识接下来的多少个字节是属于本次方法所写入的字节数。
而write()方法按照常理,直接写出UTF-8编码后的字符。
本文通过对比DataOutputStream的writeUTF()方法与OutputStreamWriter的write()方法,详细解释了两种方法在处理UTF-8编码字符串时的不同行为。writeUTF()会在字符串前添加长度标识,而write()则直接写出编码后的字符。
两个方法写出的16进制码分别是
DataOutputStream的writeUTF():00 01 61 00 01 62
OutputStreamWriter的write():61 62
经个人分析,writeUTF()写出一个UTF-8编码的字符串前面会加上2个字节的长度标识,已标识接下来的多少个字节是属于本次方法所写入的字节数。
而write()方法按照常理,直接写出UTF-8编码后的字符。
202

被折叠的 条评论
为什么被折叠?