如何在Java中從檔案中讀取2D陣列?
2d陣列是一維陣列的一個數組,用於將檔案的文字內容讀入一個2d陣列中——
- 例項化Scanner或者其他相關類來讀取檔案中的資料。
- 建立一個用於儲存內容的陣列。
- 為了複製內容,你需要兩個迴圈,其中一個迴圈巢狀在另一個迴圈裡。外層迴圈將遍歷一維陣列的陣列,而內層迴圈將遍歷具體一維陣列的元素。
- 建立一個從0開始到陣列長度的外層迴圈。在此迴圈中讀取每一行,呼叫 nextLine()、trim()和split()方法進行trim和分割操作。
- 建立一個從0開始到行長度的第二層迴圈。在此迴圈中將字串陣列的每一個元素轉換成整數,並賦給前一步建立的陣列。
示例
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.Arrays;
import java.util.Scanner;
public class Reading2DArrayFromFile {
public static void main(String args[]) throws Exception {
Scanner sc = new Scanner(new BufferedReader(new FileReader("sample.txt")));
int rows = 4;
int columns = 4;
int [][] myArray = new int[rows][columns];
while(sc.hasNextLine()) {
for (int i=0; i<myArray.length; i++) {
String[] line = sc.nextLine().trim().split(" ");
for (int j=0; j<line.length; j++) {
myArray[i][j] = Integer.parseInt(line[j]);
}
}
}
System.out.println(Arrays.deepToString(myArray));
}
}
輸出
[[2, 2, 2, 2], [6, 6, 6, 6], [2, 2, 2, 2], [4, 4, 4, 4]]
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP