FileInputStream和ByteArrayInputStream有什麼區別? 什麼時候我們應該使用它們? 什麼是使用一個超過其他Java文件處理類
-6
A
回答
0
流
- 字節面向流(8位)
- 好爲二進制數據,如一個Java .class文件,圖像等 的好處
- 好 「面向機器」
讀/寫器
- 炭(UTF-16)面向流(16位)在一個時間
- 一個字符
- 好爲文本,如一個Java源
- 好爲 「人性化」 的數據
緩衝
- 許多字節/ characte RS在時間
- 總是除非有用的證據,否則
兩個ByteArrayInputStream的和的FileInputStream服務於同一目的,即讀取二進制數據,並都實現一個共同的抽象超InputStream.So這是非常艱難的發現中了鮮明的對比但是通用邏輯規定陣列已經存在於存儲器中,因此與存在於文件系統中的文件相比,它們可以更快地被訪問。另外,如果您仔細閱讀這兩個類的文檔,您將發現ByteArrayInputStream的讀取功能無法阻止,而如果沒有輸入可用,則FileInputStream中的讀取功能會阻塞。
所以,如果你是無所適從使用時再想想這些:
- 以什麼形式我有數據,文件或數組?
- 速度真的是一個要求嗎?如果是,那麼去ByteArray。但請記住,您無法在ByteArray中存儲太多的信息,因爲它們存在於內存中。
+0
https://www.quora.com/What-is-the-difference-between-File-input-output-stream-and-ByteArray-input-output-stream –
相關問題
- 1. 文件處理Java
- 2. 處理XML文件(JAVA)
- 3. 用Java處理ARJ文件
- 4. Java文件處理DisplayOnConsole
- 5. java中的文件處理
- 6. flush()java文件處理
- 7. 文本文件處理 - 使用java
- 8. 與批處理文件打開文件,然後使用文件中的java類
- 9. 處理從批處理文件運行Java的錯誤
- 10. 使用處理庫 - 在處理草圖中的Java文件中?
- 11. 在批處理文件中調用java類
- 12. 調試從Windows批處理文件中調用的Java類
- 13. 文件處理的核心java
- 14. 在java中處理/讀取.BAI2文件
- 15. 使用java中的文件處理
- 16. Java文件行處理(基礎知識)
- 17. 使用java監控批處理文件
- 18. 從java批處理文件運行jar
- 19. Java的並行文件處理
- 20. 如何處理Java中的文件集
- 21. 遠程執行批處理文件java
- 22. Java和多行批處理文件
- 23. 用java通過javascript處理excel文件
- 24. 在java中的文件處理
- 25. 在Java中處理Excel文件
- 26. 從java運行批處理文件
- 27. java中的文件處理程序
- 28. 會java能夠處理5000或更多文件的文件處理程序?
- 29. 文件處理
- 30. 處理子類別的Python CSV文件
閱讀javadoc – Jens