编码格式不一样,流里存放的是二进制数据(byte[])
向流中写入数据一般用getBytes
当你取出来时,要转换成你原来的编码方式
所以如果你取出流中的数据后,要将二进制(byte[])还原成原始数据
原来的数据是什么编码,你就用什么来解码.然后就可以使用了
向流中写入数据一般用getBytes
当你取出来时,要转换成你原来的编码方式
所以如果你取出流中的数据后,要将二进制(byte[])还原成原始数据
原来的数据是什么编码,你就用什么来解码.然后就可以使用了
英文书是这样写的:
stdin与stdout是stream类
Stream类主要用于非char类的数据I/O和系统级的I/O
Reader类用于char类的IO
java中char是2 Byte的, String 也是char类。说白了,就是unicode 的。
Stream与Reader可相互转化。
不要看think in java ,你初学看不明的。
但中文书就看不到这种说法了,其实很简单的东西中文把它复杂化了。
我根据外国人的书写程序时,处理文本类用Reader, 否则用Stream 。
我才自学了一个月左右,既没书也没老师, 都是看网上e书的,不一定正确,可参考。