我正在从 java 中读取文本文件(逗号作为分隔符)

样本数据文件


INV1,A,BB,,,,

INV2,A,CC,,,,

INV3,C,BB,,,,

阵列仅获得第一行的 INV1 A 和 BB,类似地获得第二行的 INV2 a 和 CC,以及第三行的 INV3 C 和 BB。其余值不予考虑。


我的代码


        BufferdReader bReader = new BufferedReader (new FileReader(/home/test.txt));

        String line = "";

        while ((line = bReader.readLine ()) !=null)

    {

 if (line != null)

{

 String[] array = line.split(",") ;

  for (String arrays : array ) {

                System.out.println(arrays );

            }

}

}

输出 :


INV1

A

BB

INV2

A

CC

INV3

C

BB

预期输出


INV1

A

BB




INV2

A

CC




INV3

C

BB


慕斯709654
浏览 211回答 2
2回答

冉冉说

我认为这与 String 类的 split 函数有关。这条线应该可以解决问题。"INV1,A,BB,,,,".split(",", -1);这个答案很好地解释了它:String split。

30秒到达战场

为 split 方法添加限制:String[] array = line.split(",", -1);这是因为如果您不提供限制,右侧的空字符串将被修剪。此答案中解释了此行为。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java