public static void getImage() throws FileNotFoundException
{
Scanner input = new Scanner(new File(fileName));
String element = input.nextLine( );//
// tokenize string with " " as the delimiter
StringTokenizer tokenizer = new StringTokenizer( element, " " );
// store y and x variables
imageHeight = Integer.parseInt( tokenizer.nextToken( ) );
imageWidth = Integer.parseInt( tokenizer.nextToken( ) );
System.out.println(imageHeight);
System.out.println(imageWidth);
buffer = new char[100] [100];
System.out.println( "Getting Image ..." );
for ( int i = 0; i < imageHeight; i++ )
{
element = input.nextLine();
for ( int j = 0; j < imageWidth; j++ )
{
buffer[i][j] = element.charAt(j);
}
}
input.close( );
}
整个代码编译,但上面是整个代码的一部分,当我运行它时给我错误。代码的目标是创建一个多维数组,在打印时它会显示由文本文件中的字符组成的图像。它通过解析指定的.txt文件来获取索引。前2个读取令牌是定义数组大小的数字。然后它继续读取.txt文件并将字符分配给原始文本文件中它们所在位置的数组,最终创建一个由字符组成的图像。
这部分代码应该将文件中的所有字符放入数组中,但是我得到运行错误。请帮助!
答案 0 :(得分:0)
您正尝试在空位置获取char。在访问特定位置(j)之前添加一些验证。
element.lenght()&gt; 0