如何在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