uuuuuu10248 2020-09-24 15:06 采纳率: 60%
浏览 285
已采纳

如何将文件中的数据一行一行的赋给二维数组?

        FileReader fr=null;
            BufferedReader bur=null;
            try
            {
                fr=new FileReader("F://Buff4.txt");
                bur=new BufferedReader(fr);

                String line=null;

                Scanner sss=new Scanner(System.in);
                char table[][]=new char[8][];

                while((line=bur.readLine())!=null)
                {

                    for(int i=0;i<8;i++) {

                        table[i]=line.toCharArray();
                    }
                    System.out.println(line);

                }

                f(table);

            }


            catch (IOException e)
            {
                e.printStackTrace();
            }
            finally
            {
                try
                {
                    if(bur!=null)
                        bur.close();
                }
                catch (IOException e)
            {
                e.printStackTrace();
            }
            }


        }

        public static void f(char a[][]) {

            String s="ABC";

            for(int i=0;i<8;i++) {
                for(int j=0;j<3;j++) {
                    if(a[i][j]=='1') System.out.print(s.charAt(j));
                }
                System.out.println();
            }

        }

截取了一部分代码,我这个程序的目的是利用二进制求集合的子集。
首先前半部分是将所有可能的二进制组合写入文件中
后边是读取,我在读取的时候遇到了问题,这里只能读取文件中的第一行,我也不知道该怎么改。
比如我这里定义的f函数,程序运行之后输出的结果就是8行ABC
求大佬们指点!!

  • 写回答

1条回答 默认 最新

  • jingluan666 2020-09-24 15:52
    关注
     while((line=bur.readLine())!=null)
                    {
    
                        for(int i=0;i<8;i++) {
    
                            table[i]=line.toCharArray();
                        }
                        System.out.println(line);
    
                    }
    

    改成

    int i=0;
    
                 while((line=bur.readLine())!=null)
                 {
    
                     table[i]=line.toCharArray();
    
                     i++;
    
                     System.out.println(line);
                 }
    
    

    内层的for是不是多余的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!