Java-Scanner没有正确读取String

时间:2015-10-25 16:00:18

标签: java csv java.util.scanner jgrasp

我正在为一个学校项目编写一个程序,我在其中读取initializeGL文件,并根据其中的数据执行计算。

.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."); } 问题的代码的一部分。我正在阅读一篇载有过去几年芝加哥逮捕记录的Scanner。但是,每次运行程序时,它都会跳过.csv。它只是执行我的打印声明"请输入第二个数据集..."然后打印出"搜索"的实例。

我正在使用jGRASP,我的编译器看起来像:

scan.nextLine()

它循环四次而无需用户输入。我尝试使用 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()中有类似" CRIMINAL DAMAGE"并且.csv搜索了单词" CRIMINAL"和"损害"分别。如果有人对如何让计算机停止阅读scan.next()有任何建议,请使用scan.nextLine()阅读两个单词,或者对此有任何其他解决方案,我将不胜感激。

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

0 个答案:

没有答案