Java語言中,讀取文件的方法非常重要。其中,read和readline是兩個常用的方法。這篇文章將向您介紹這兩個方法,并解釋它們的異同點。
public int read() throws IOException
read方法可以從輸入流中讀取一個字節。方法的返回值是讀取的字節,如果讀取到文件末尾,則返回-1。
以下是調用read方法的示例代碼:
try (FileInputStream inputStream = new FileInputStream("example.txt")) { int value = inputStream.read(); while (value != -1) { System.out.print((char) value); value = inputStream.read(); } } catch (IOException e) { e.printStackTrace(); }
上面的代碼連續讀取文件example.txt的每個字節,并將它們轉換成字符輸出。
public String readline() throws IOException
readline方法可以從輸入流中讀取一行文本。如果讀到文件末尾,則返回null。注意,這個方法只有在輸入流以文本格式讀取時才適用。
以下是調用readline方法的示例代碼:
try (BufferedReader reader = new BufferedReader(new FileReader("example.txt"))) { String line = reader.readLine(); while (line != null) { System.out.println(line); line = reader.readLine(); } } catch (IOException e) { e.printStackTrace(); }
上面的代碼按行讀取文件example.txt的內容,并將每行文本輸出。
因此,兩個方法的主要區別在于讀取的內容類型。read方法用于讀取字節流,而readline方法用于讀取文本流。同時,readline方法會讀取一整行文本,而read方法只能讀取一個字節。
如果您需要讀取文本文件中的內容,那么使用readline方法是最好的選擇。但是,如果您需要讀取二進制文件,則應該使用read方法。