IO兩大主流,16位和8位
16位對(duì)應(yīng)Writer 和 Reader
根據(jù)編程目的不同有
FileWriter和FileWriter 對(duì)文件進(jìn)行讀寫。
StringWriter、StringReader 對(duì)內(nèi)存里的位置進(jìn)行讀寫。
PipedWrier、PipedReader 兩個(gè)線程間通訊用
8位對(duì)應(yīng)InputStream 和 OutputStream
根據(jù)編程目的不同有
FileInputStream、FileOutputStream 對(duì)文件進(jìn)行讀寫
ByteArrayInputStream、ByteArrayOutputStream 對(duì)字節(jié)數(shù)組進(jìn)行讀寫
PipedInputStream、PipedOutputStream 線程間通訊用
注意:在數(shù)據(jù)流里不存在字符串的IO操作,那樣就要用Reader和Writer類
二者的橋梁在InputStreamReader、OutputStreamWriter
BufferedWriter、BufferedReader、BufferedInputStream、BufferedOutputStream
是用來(lái)提高IO速度的,注意包裝的時(shí)候最好最先包裝Buffered,這樣效果會(huì)好些。
包裝模式的理解。Package Pattern
各種Data Type的長(zhǎng)度的記憶.
還要注意對(duì)象流的使用.
高級(jí)IO操作:
信道IO,java.nio.channels包
他的主要特征是可以對(duì)內(nèi)存進(jìn)行快讀寫操作,進(jìn)行內(nèi)存映射.
同時(shí)可以創(chuàng)建各種數(shù)據(jù)類型的緩沖區(qū),從而提高IO操作效率.