一、引言
Java語言是廣泛應用的一種面向對象編程語言,它擁有眾多強大的功能和類庫,其中包括文件輸入輸出流,可以輕鬆地對文件進行讀取、寫入、複製等操作。本文將介紹如何使用Java讀取文件的方法和步驟,並附上詳細的代碼示例。
二、Java文件讀取方法詳解
1. 讀取文本文件
Java中可以使用FileReader或BufferedReader實現對文本文件的讀取。
使用FileReader
try{ File file = new File("test.txt"); FileReader reader = new FileReader(file); int ch; while((ch=reader.read())!=-1){ System.out.print((char)ch); } reader.close(); }catch(IOException e){ e.printStackTrace(); }
上述代碼中,先定義一個File類型的變量來存放讀取的文件,在創建FileReader時,將文件作為參數傳入構造函數即可。然後使用while循環讀取文件,直到讀取結束為止,並關閉讀取流。
使用BufferedReader
try{ File file = new File("test.txt"); BufferedReader reader = new BufferedReader(new FileReader(file)); String line; while((line=reader.readLine())!=null){ System.out.println(line); } reader.close(); }catch(IOException e){ e.printStackTrace(); }
使用BufferedReader的方法與FileReader類似,不同的是BufferedReader使用readLine方法來讀取文件,每次讀取一行,並返回一個字符串。同樣地,讀取結束後需關閉流。
2. 讀取二進制文件
Java中可以通過FileInputStream類和DataInputStream類實現對二進制文件的讀取。
使用FileInputStream
try{ File file = new File("test.bin"); FileInputStream fis = new FileInputStream(file); byte[] bytes = new byte[(int) file.length()]; fis.read(bytes); for (byte b : bytes) { System.out.print((char)b); } fis.close(); }catch(IOException e){ e.printStackTrace(); }
上文代碼中,首先創建一個File類型的變量來存放讀取的文件,然後創建一個FileInputStream對象,將文件作為參數傳入構造函數即可。接着創建一個字節數組來存放讀取的數據,並使用read方法將數據讀入字節數組中,最後循環遍歷字節數組並輸出內容。最後需要關閉流。
使用DataInputStream
try{ File file = new File("test.bin"); FileInputStream fis = new FileInputStream(file); DataInputStream dis = new DataInputStream(fis); int size = dis.readInt(); byte[] bytes = new byte[size]; dis.readFully(bytes); for (byte b : bytes) { System.out.print((char)b); } dis.close(); }catch(IOException e){ e.printStackTrace(); }
使用DataInputStream的讀取方法與FileInputStream類似,不同的是使用readInt方法讀取數據的長度,再使用readFully方法將數據讀入字節數組中。最後還需關閉流。
三、小結
Java文件讀取是Java編程中非常重要的一個環節,同時,也是連接Java與外部環境的關鍵方法之一。通過本文的介紹,讀者可以輕鬆掌握Java文件讀取的基本概念和使用技巧,可以自如地在Java編程中運用此技術。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/183383.html