同学,你用的是字节流InputStreamReaderiin=newInputStreamReader(System.in);,这个字节流对接到了键盘的输入,你要知道,字节流,只能一个字节一个字节的读数据,而字符是两个字节,这样一读,读取的Unicode就有可能是错的,所以在记事本里显示就不正常。。。所以一般都会加一个处理流在字节流上,这样就可以两个字节两个字节的读数据了,你也可以用转换流,将字节流转换成字符流,但是注意貌似没有字符流转成字节流哟!!!