dos.writeUTF("中国");
dos.writeChars("中国");
00 06 e4 b8 ad e5 9b bd 4e 2d 56 fd
老师这里讲得估计有问题吧。那00 06是如何来的?
和你存在一样的问题
00 06 ---> 这两字节表示的是字符串s占6个字节 ( String s = dis.readUTF(); )
e4 b8 ad e5 9b bd --->"中国"的utf-8编码
4e 2d 56 fd --->"中国"的utf-16be编码
我用writeUTF方法写入其他字前面也有00 06
前面不是还有write其他类型的吗,别搞混了。