在本文中,我們將學習如何使用 Java 中的新 I/O (NIO) API 讀寫檔案。首先,我們需要從Java 中的NIO包匯入檔案。這個NIO.2是從Java 7版本開始引入的。與傳統的 Java 包java.io相比,這提供了一種更有效的處理輸入和輸出操作的方法。現在,透過使用java.nio包,我們可以寫入和讀取檔案。
下面我們提供了兩個寫入檔案和讀取檔案的示例。
使用 NIO 寫入檔案
為了將資訊寫入檔案,我們有一個類Files,它用於在 NIO 中處理檔案操作。該類在java.nio中可用。然後獲取資訊並將其寫入示例檔案。這裡我們採用了example.txt檔案來進行寫入和讀取操作。
使用新 I/O (NIO.2) API 寫入檔案的 Java 程式
以下是使用 New I/O (Nio.2) API 寫入檔案的程式:
<font>// Java Program to Write Files using the New I/O (NIO.2) API<i> import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.List;
public class FileWriteExample { public static void main(String[] args) { Path filePath = Paths.get("example.txt");
try { // Create a list of strings to be written to the file<i> List<String> lines = new ArrayList<>(); lines.add("Welcome"); lines.add("to"); lines.add("GeeksForGeeks");
// Write the lines to the file<i> Files.write(filePath, lines);
System.out.println("File written successfully."); } catch (IOException e) { e.printStackTrace(); } } }
|
程式說明:
- 首先,我們建立了一個 Java 類。
- 之後,我們使用java.nio包中的Path類獲取目標檔案的路徑資訊。
- 這裡我們的目標檔案是example.txt。
- 接下來在 try catch 塊中,我們將一些 String 值作為列表,因為 write 方法僅接受位元組陣列。
- 然後使用Files.write()執行寫操作。
使用NIO讀取檔案
在此示例中,我們可以使用Files.readAllLines() 從example.txt讀取現有資料。該方法可以讀取檔案中的所有資料。此方法採用一個引數,即檔案路徑。
<font>// Java Program to Read Files using the New I/O (NIO.2) API <i> import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.List;
public class File1 { public static void main(String[] args) { // Define the path to the file<i> Path filePath = Paths.get("example.txt");
try { // Read all lines from the file into a list<i> List<String> lines = Files.readAllLines(filePath);
// Print each line<i> for (String line : lines) { System.out.println(line); } } catch (IOException e) { e.printStackTrace(); } } }
|
程式說明:
- 首先,我們建立了一個 Java 類。
- 之後,我們使用java.nio包中的Path類獲取目標檔案的路徑資訊。
- 這是我們的目標檔案 example.txt
- 接下來在 try catch 塊中,我們使用 Files.readAllLines(filePath) 從檔案中讀取所有資料。
- 之後,透過使用 for 迴圈,它會列印檔案中的每個字串。