今天,我們學習的是java中的比較重要IO流,通過這篇文章的學習,我們可以完成對本地文件的讀取和創建等功能。一起來看一下吧。
File及構造方法
java中的file類是文件和目錄路徑名的抽象表示形式,其中它的構造方法有
通過這些方法我們可以獲取文件的路徑,之後便可以處理文件。如下:
- 根據文件的全名
File f1 = new File("C:/Users/Renyu/Desktop/a/b/a.txt");
- 兩個路徑拼接成全路徑
File f2 = new File("C:/Users/Renyu/Desktop/a", "/b/my.txt");
File類成員方法
其中的成員方法有創建,刪除,重命名以及以下判斷功能
下面有一些簡單的實例,我們來一起感受一下// 如果此文件存在
IO流
我們學會了對文件的處理,能對文件創建刪除以及修改命名等等,下面我們可以通過IO流對文件中的內容進行讀取和寫入。
IO流是用來處理設備之間數據傳輸上傳文件和下載文件的,其中我們可通過Java中的流對數據的進行操作,我們使用的的操作流對象都是在IO包中。
IO流分類
- 根據數據流
輸出流-->讀入數據
輸出流-->寫出數據
- 根據數據類型
字符流
字節流
那麼問題來了,我們要在什麼樣的情況下使用流呢?首先,當我們數據所在的文件通過Windows自帶的筆記本就可以打開的話,並且可以讀懂裡面的內容,這時候我們要使用字符流,如果不能,那麼我們用字節流。
還有就是如果你也不知道這麼文件是什麼樣子的,那我我們使用字節流。
IO流常用的基類
字節流的抽象基類:InputStream,OutPutStream
字符流的抽象基類:Reader ,Winter
這裡有一點是值得注意的,有這4個類派生出的子類名董事以其父類名作為子類的後最。
字節流的讀/寫數據
通過上述的例子,我們就可以實現對文件的字節流讀取,記住在寫完數據後要及時close關閉資源,以便釋放資源給其它進程使用。
字節緩衝流
相比起字節流每次讀寫一個字節文件來說,與字節不同的是,字節緩衝流的加入了字節緩衝區。目的就是提高操作的效率。
字節緩衝輸出流 BufferedOutputStream
字節緩衝輸出流 BufferedInputStream
實例1中有flush()這時將緩衝區的數據刷新到文件中,默認大小是8K,這樣每次都以塊的形式輸入,加快了數據讀寫。
轉換流
在字節流中操作中文並不是特別的方便,於是在java中提供了轉換流
字符流=字節流+編碼表
轉換流的構造方法
因為轉換流的名字比較的長,我們為了簡化書寫,給轉換流提供額對應的子類,FileWrite和FileReader。
字符緩衝流
我們有字節緩衝了流,當然也有字符緩衝流,下面我們再來看看這個吧~
其實這些都是大同小異的用法,學習會一個別的也差不多。在這裡面我們有特殊的功能
分別是寫一行新數據void newLine()、讀取一行數據String readLine()、以及複製文本文件
以上就是IO流額一些簡單常用的知識,除此之外還有一些內存操作流、標準輸出輸入流、Properties流我們之後的遇到再對此作出補充。
還有什麼疑問或者別的問題,歡迎在下方留言哦!如果有幫助到大家,歡迎的關注。
感謝堅持關注的朋友
世界很大,幸好有你
歡迎在評論區留下你的問題或困惑,我將每天與你分享我的觀點和心得。
聚焦最新科技諮訊,探尋未來智能領域,我是女陶。
閱讀更多 女陶愛柚子 的文章