程序以获取文件中的最小数字

时间:2014-07-26 22:50:32

标签: java file inputmismatchexception

我正在尝试让程序访问文件名" highscore.txt",然后:

  1. 在文件中写下新号码

  2. 获取文件中数字列表的最小值。

  3. 我是Java的新手,所以我几乎不知道如何访问该文件。

    我得到了我认为应该有效的代码,但是当我运行该程序时,它会说

    Exception in thread "main" java.util.InputMismatchException
        at java.util.Scanner.throwFor(Scanner.java:864)
        at java.util.Scanner.next(Scanner.java:1485)
        at java.util.Scanner.nextDouble(Scanner.java:2413)
        at game.game.main(game.java:91)
    Java Result: 1
    

    这是第84-94行,以及我得到的代码。

    84: Writer wr = new FileWriter("highscore.txt");
    85:            wr.write(tries);
    86:            wr.close();
    87:            lowest = tries;
    88:            File file = new File("highscore.txt");
    89: Scanner inputFile = new Scanner(file);
    90: while (inputFile.hasNext()) {
    91:    numb = inputFile.nextDouble();
    92:    if (numb < lowest) lowest = number;
    93: }
    94: inputFile.close();
    

1 个答案:

答案 0 :(得分:0)

使用Collections课程。它实现了一个静态sort()方法,可以执行您想要的操作:排序数字。 快速而脏的代码看起来像这样(假设你在每一行都有一个数字):

String line = readLine();
while(line != null){
  numberList.add(Integer.parseInt(line));
  line = readLine();
}
Collections.sort(numberList);

现在只需从numberList中选择第一个号码。