将文件作为二维字符数组读取
如何仅使用java.io.File
、Scanner
和文件未找到异常将数据从只包含char
的文本文件读入到二维数组中?
这是我尝试创建的方法,它将文件读入到2D数组中。
public AsciiArt(String filename, int nrRow, int nrCol){
this.nrRow = nrRow;
this.nrCol = nrCol;
image = new char [nrRow][nrCol];
try{
input = new Scanner(filename);
while(input.hasNext()){
}
}
}
解决方案
确保您正在导入java.io.*
(或您需要的特定类,如果这是您想要的)以包括FileNotFoundException
类。演示如何填充2D数组有点困难,因为您没有指定希望如何准确解析文件。但此实现使用了扫描仪、文件和FileNotFoundException。
public AsciiArt(String filename, int nrRow, int nrCol){
this.nrRow = nrRow;
this.nrCol = nrCol;
image = new char[nrRow][nrCol];
try{
Scanner input = new Scanner(new File(filename));
int row = 0;
int column = 0;
while(input.hasNext()){
String c = input.next();
image[row][column] = c.charAt(0);
column++;
// handle when to go to next row
}
input.close();
} catch (FileNotFoundException e) {
System.out.println("File not found");
// handle it
}
}
相关文章