您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關java如何實現文件讀寫操作,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
它是文件和目錄路徑名的抽象表示。
文件和目錄是可以通過File封裝成對象的。
對于File而言,其封裝的并不是一個真正存在的文件,僅僅是一個路徑名而已。它可以是存在的,也可以是不存在的。將來是要通過具體的操作把這個路徑的內容轉換為具體存在的。
File(String pathname) //通過將給定的路徑名字符串轉換為抽象路徑名來創建新的 File實例 File(String parent, String child) //從父路徑名字符串和子路徑名字符串創建新的 File實例 File(File parent, String child) //從父抽象路徑名和子路徑名字符串創建新的 File實例
public boolean createNewFile() 當具有該名稱的文件不存在時,創建一個由該抽象路徑名命名的新空 文件 public boolean mkdir() 創建由此抽象路徑名命名的目錄 public boolean mkdirs() 創建由此抽象路徑名命名的目錄,包括任何必需但不存在的父目錄
public boolean isDirectory() 測試此抽象路徑名表示的File是否為目錄 public boolean isFile() 測試此抽象路徑名表示的File是否為文件 public boolean exists() 測試此抽象路徑名表示的File是否存在
public String getAbsolutePath() 返回此抽象路徑名的絕對路徑名字符串 public String getPath() 將此抽象路徑名轉換為路徑名字符串 public String getName() 返回由此抽象路徑名表示的文件或目錄的名稱 public String[] list() 返回此抽象路徑名表示的目錄中的文件和目錄的名稱字符串數組 public File[] listFiles() 返回此抽象路徑名表示的目錄中的文件和目錄的File對象數組
public boolean delete() 刪除由此抽象路徑名表示的文件或目錄
相對路徑與絕對路徑
絕對路徑:完整的路徑名,不需要任何其他信息就可以定位它所表示的文件。例如:E:\cast\java.txt
相對路徑:必須使用取自其他路徑名的信息進行解釋。例如:myFile\java.txt
IO流介紹
IO:輸入/輸出(Input/Output)流:是一種抽象概念,是對數據傳輸的總稱。也就是說數據在設備間的傳輸稱為流,流的本質是數據傳輸IO流就是用來處理設備間數據傳輸問題的。常見的應用:文件復制;文件上傳;文件下載
IO流的分類
按照數據的流向
輸入流:讀數據
輸出流:寫數據
按照數據類型來分
字節流
字節輸入流
字節輸出流
字符流
字符輸入流
字符輸出流
IO流的使用場景
如果操作的是純文本文件,優先使用字符流如果操作的是圖片、視頻、音頻等二進制文件。優先使用字節流如果不確定文件類型,優先使用字節流。字節流是萬能的流
void write(int b) 將指定的字節寫入此文件輸出流 一次寫一個字節數據 void write(byte[] b) 將 b.length字節從指定的字節數組寫入此文件輸出流 一次寫一個字節數組數據 void write(byte[] b, int o?, int len) 將 len字節從指定的字節數組開始,從偏移量o?開始寫入此文件輸出流 一次寫一個字節數組的部分數據
如何實現換行?
windows中輸入\r\n
inux:\n
mac:\r
如何實現追加寫入
public FileOutputStream(String name,boolean append) 創建文件輸出流以指定的名稱寫入文件。如果第二個參數為true ,則字節將寫入文件的末尾而不是開頭
關于異常處理
可以使用try{ finally{ }強制執行清除文件對象操作
try{
可能出現異常的代碼;
}catch(異常類名 變量名){
異常的處理代碼;
}finally{
執行所有清除操作;
}
字節輸入流
FileInputStream(String name):通過打開與實際文件的連接來創建一個FileInputStream ,該文件由文
件系統中的路徑名name命名字節輸入流讀取數據的步驟
創建字節輸入流對象調用字節輸入流對象的讀數據方法
釋放資源
案例
關于“java如何實現文件讀寫操作”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。