Java 如何将以下文本读入二维数组

Java 如何将以下文本读入二维数组,java,null,multidimensional-array,Java,Null,Multidimensional Array,写入文本文件后,2D对象如下所示: null null -5 160 2 null null null 75 80 1 75 160 0 null 75 320 1 null null 155 160 2 null null 235 0 1 235 80 2 235 160 1 null null 该对象在窗体中 elements(x,y,i) 因此每个对象使用3个数字 从文本文件中读取整数时会出现问题,因为它与空值中的字符串混合。 这是我到目前为止所做的,但它只读取部分文本文件

写入文本文件后,2D对象如下所示:

null null -5 160 2 null null
null 75 80 1 75 160 0 null 75 320 1 
null null 155 160 2 null null 
235 0 1 235 80 2 235 160 1 null null
该对象在窗体中

elements(x,y,i)
因此每个对象使用3个数字

从文本文件中读取整数时会出现问题,因为它与空值中的字符串混合。 这是我到目前为止所做的,但它只读取部分文本文件

    public void readElements() throws IOException {
        File file = new File("elements.txt");
        Scanner inp = new Scanner(file);


        for (int col = 0; col <rectArr.length; col++){

            if(inp.hasNextLine()) {
                inp.nextLine();
            }

            for(int row = 0; row<rectArr[0].length; row++){
               if(inp.hasNext()) {
                   try {
                       String s = inp.next();
                       Integer.parseInt(s);

                       System.out.println(s);

                       int x = Integer.parseInt(s);
                       int y = Integer.parseInt(inp.next());
                       int i = Integer.parseInt(inp.next());

                       elementsArr[col][row] = new elements(x, y, i);

                   } catch (NumberFormatException nfe) {

                   }
               }
            }
        }
   }

您需要更仔细地考虑当输入中有空值时会发生什么情况。@DavidWallace说了什么,另外:读取文件后,您如何知道rectArr.length是什么?我想知道数组是否是这里最好的设计选择。如果s.trim.equalsnull{/*做任何事*/}Thansk@paisanco rectArr.length是issue@yesno我为你找到了解决方案,但我需要更多信息。你们能告诉我你们的2d阵列的大小吗?例如,是2乘2吗?