java
关于io处理
重新学习java,已经丢下好几年,做文件服务器重新收拾下,发现出来的东西有种默契感,估计这就是程序员干了好几年后的好处。
io 记得以前要看很久,却老是不记得,现在一下就明白了
reader,writer 是处理字符的
inputstream,outputstream 是处理字节流的,
对应会扩展出很多针对不同情况使用的类,像bytearrayinputstream 是放在内存缓冲区的,那速度应该最快,但是大小肯定有限制
stringbufferstring 是处理string对象的,那做字符串操作时,可以使用
file,pipe,sequence
filterinputstream 比较好玩,可以作为装饰器的基类(decorate),装饰器,顾名思义,可以修饰inputstream,那么在给特定input 增加功能的时候就可以使用这个特殊的基类了。
PushbackInputStream 这个主要用途是编译器开发,让我觉得神奇,从来不会考虑java 开发编译器。。。。
reader系列则有对应的处理类,只是处理的对象变成字符罢了,就是带上了编码类型。
但是貌似不是所有reader 都有字符集的设置参数,bufferreader就没有,但是inputstreamreader 有的,所有如果和默认字符集不同时,需要结合inputstreamreader 进行设置~
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
而这样的写法可以提高效率,不懂~~~~~

浙公网安备 33010602011771号