读取文本文件并输入双数组

问题描述

嗨,我的硬件,我想读取一个文本文件“.” 'x' 代表康威生命游戏中的细胞。我无法读取给定的文本输入并将其添加到我的双整数数组中。特别是 rowcounter 和 columncounter 部分,我确信有更好的方法来做到这一点,但是当我尝试 for 循环时,它只读取一行。为了以防万一,我包含了代码的前面部分。谢谢。

// Initiate file
File inputfile = new File(inputfilename);
try {
    input = new Scanner(inputfile);
} catch (Exception ie) {
}

// Get array size
int[] arraysize = new int[2];
while (input.hasNextInt()) {
    for (int i = 0; i < 2; i++) {
        int token = input.nextInt();
        arraysize[i] = token;
    }
}
//System.out.println(Arrays.toString(arraysize));

// Create Array
int[][] newarray = new int[arraysize[0]][arraysize[1]];
//System.out.println(Arrays.deepToString(newarray));

// Read initial
int rowcounter = 0;
int columncounter = 0;
while (input.hasNextLine()) {
    Scanner inputtoken = new Scanner(input.nextLine());
    while (inputtoken.hasNext()) {
        String token = inputtoken.next();
        //System.out.print(token);
        char xchar = token.charat(0);
        if (xchar == 'x') {
            newarray[rowcounter][columncounter] = 1;
        } else {
            newarray[rowcounter][columncounter] = 0;
            //System.out.print(rowcounter);
        }
        columncounter = columncounter + 1;
        //System.out.print(columncounter);
    }
    columncounter = 0;
    System.out.println();
    rowcounter = rowcounter + 1;
    //System.out.print(rowcounter);
}
System.out.println(Arrays.deepToString(newarray));

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)