Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-扫描程序未正确读取字符串_Java_Csv_Java.util.scanner_Jgrasp - Fatal编程技术网

Java-扫描程序未正确读取字符串

Java-扫描程序未正确读取字符串,java,csv,java.util.scanner,jgrasp,Java,Csv,Java.util.scanner,Jgrasp,我正在为一个学校项目编写一个程序,在这个程序中,我读取了一个.csv文件,并根据其中的数据进行计算 System.out.println("Please enter a second data set to search:\nFor example, type 'narcotics, poss,' 'criminal damage,' or 'battery.'\nCapitalization does not matter."); secondDataSet = scan.ne

我正在为一个学校项目编写一个程序,在这个程序中,我读取了一个
.csv
文件,并根据其中的数据进行计算

System.out.println("Please enter a second data set to search:\nFor example, type 'narcotics, poss,' 'criminal damage,' or 'battery.'\nCapitalization does not matter.");
        secondDataSet = scan.nextLine().toUpperCase();
        System.out.println("Searching for instances of " + secondDataSet);
        if (!secondDataSet.equals(""))
        {
           while (inputStream.readLine() != null)
           {
              String[] all = line.split(splitBy);
              if (all[8].toUpperCase().equals("TRUE"))
              {
                 numArrests++;
              }
              if (all[8].toUpperCase().equals("FALSE"))
              {
                 numNonArrests++;
              }
              if (all[5].equals(secondDataSet))
              {
                 secondDataCount++;
              }
              numberOfLines++;
              line = inputStream.readLine();
           }
           if (secondDataCount == 0)
           {
              i--;
              System.out.println("The data set you entered does not exist.\nPlease try checking your spelling or reformatting your response.");
           }
以上是我正在使用的代码的一部分,其中包含我的
扫描仪问题。我正在读一份
.csv
,里面有过去几年芝加哥的逮捕记录。但是,每次我运行程序时,它都会跳过
scan.nextLine()
。它只是执行我的打印语句“请输入第二个数据集…”,然后打印“搜索的实例”

我正在使用jGRASP,我的编译器如下所示:

 Please enter a data set to search:
 For example, type 'narcotics, poss,' 'criminal damage,' or 'battery.'
 Capitalization does not matter.
 Searching for instances of
它循环了四次,没有得到用户的输入。我尝试改为使用
scan.next()
,但当我输入一个包含两个单词的字符串时,这不起作用,因为
.csv
中有一些值,如“刑事损害”和
scan.next()
分别搜索了“刑事”和“损害”两个单词。如果有人对如何让电脑停下来阅读
scan.nextLine()
有任何建议,请使用
scan.next()
阅读两个单词,或者使用任何其他解决方案,我将不胜感激


我现在对此感到非常困惑,所以任何帮助都是非常好的,因为我花了大量的时间在我需要完成的大型项目的一小部分上。。。此外,如果我的问题不清楚或含糊不清,我可以澄清您可能有的任何问题

请发布完整的代码很可能缓冲区中有CRLF:s(来自您未发布的代码),因此在等待新输入之前,它将对其进行处理。感谢所有快速响应的人!我刚刚能够通过在我的主方法中加入“for”循环来解决这个问题(经历了很多挫折),尽管我不完全理解这是如何解决这个问题的。我在一个紧迫的时间期限,所以我将不得不在我完成该计划后进一步研究这个问题。