Java IO流操作规律
2019獨角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
IO流主要負(fù)責(zé)數(shù)據(jù)的傳輸。
劃分:
? ? 按流向分:輸入流,輸出流;
? ? 按數(shù)據(jù)分:字節(jié)流,字符流
抽象基類:
? ? 字節(jié)流的抽象基類:
????????? ? InputStream(讀字節(jié)),OutputStream(寫字節(jié))
? ? 字符流的抽象基類:
????????? ? Reader(讀),Writer(寫)
操作規(guī)律:
1、明確體系:
????數(shù)據(jù)源:InputStream ? Reader
????數(shù)據(jù)匯:OutputStream ? Writer
2、明確數(shù)據(jù):
????數(shù)據(jù)源:是否為純文本數(shù)據(jù)
????????是:Reader
????????否:InputStream
????數(shù)據(jù)匯:
????????是:Wirter
????????否:OutputStream
????從上就可以明確具體要使用哪一個體系了,剩下的就是要明確使用這個體系中的哪個對象
3、明確設(shè)備:
????數(shù)據(jù)源:
????????鍵盤:System.in
????????硬盤:FileXXX
????????內(nèi)存:數(shù)組
????????網(wǎng)絡(luò):socket
????數(shù)據(jù)匯:
????????鍵盤:System.out
????????硬盤:FileXXX
????????內(nèi)存:數(shù)組
????????網(wǎng)絡(luò):socket
4、額外功能:
????1)、需要轉(zhuǎn)換?
????????是:使用轉(zhuǎn)換流:InputStreamReader ? OutputStreamWriter
????2)、需要高效?
????????是:緩沖區(qū):Buffered
????3)、高效嗎?
????????隨機(jī)訪問文件 RandomAccessFile
????4)、序列化嗎?
????????ObjectInputStream 和 ObjectOutputStream :對象的序列化和反序列化?? ??? Serializable接口
????5)、操作基本數(shù)據(jù)類型嗎?
????????DataInputStream 和? DataOutputStream
????6)、需要其它?
????????具體通過API查看IO完整流體系選擇
附:完整流體系圖
轉(zhuǎn)載于:https://my.oschina.net/mlongbo/blog/90812
總結(jié)
以上是生活随笔為你收集整理的Java IO流操作规律的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 零位扩展和符号位扩展
- 下一篇: Portal-Basic Java We