扫描仪和分隔符问题

时间:2015-10-12 18:30:13

标签: arrays string file delimiter

我的扫描仪无法用删除器读取我的文本文件。我试图将每个字符串保存在一个数组中,但是当我打印它时,数组保持空虚... Idk为什么

        Scanner s = new Scanner(file);
        s.useDelimiter("@");


         int length = (upperBound - lowerBound)+1;
         String [] Entries = new String[length];

         for(int i=0; i < length; i++)
         {
             Entries[i] = s.next();
         }

     //When I print this the array location is empty:(           
     System.out.println(Entries[0]);

这是我的文本文件的内容:

  The Germans occupy the rump Czech lands@Germany invades Denmark and Norway@Nazi Germany and its Axis partners invade the Soviet Union@

1 个答案:

答案 0 :(得分:0)

使用while循环读取文件并将项目存储到数组中,如下所示:

Scanner s = new Scanner(file);
    int length = (upperBound - lowerBound)+1;
    String [] Entries = new String[length];
    int count = 0;
    while (s.hasNext()){
        s.useDelimiter("@");
        Entries[count] = s.next();
        count++;
    }

使用for循环打印出你的数组:

for (int i = 0; i < Entries.length; i++) {
        System.out.println(Entries[i]);
    }

我还建议使用&#34;条目&#34;作为变量名称。在CamelCase

中保留变量名称是一种很好的做法