我无法读取文本文件中的数字

时间:2014-10-30 02:36:31

标签: java java.util.scanner

我想打开一个文件,读取代表int类型数字的字符串,然后将它们按顺序排列,但它不会读取int n6 = inputStream.nextInt( );。一旦我拿走int n6代码,它就可以了。 这是main中的代码,我知道第6个不在正确的位置,这是为了告诉你它不会工作。如果有帮助,我也会使用NetBeans。

数字为:5, -3, 3, 8, 4, 0

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.util.NoSuchElementException;

Scanner inputStream = null;
    try {
        inputStream = new Scanner(new FileInputStream("stuff.txt"));
    } catch(FileNotFoundException e) {
        System.out.println("File not found");
        System.exit(0);
    } catch(NoSuchElementException e) {
        System.out.println("Error");
        System.exit(0);
    }
    int n1 = inputStream.nextInt( );
    int n2 = inputStream.nextInt( );
    int n3 = inputStream.nextInt( );
    int n4 = inputStream.nextInt( );
    int n5 = inputStream.nextInt( );
    int n6 = inputStream.nextInt( );

    inputStream.nextLine();
    String line = inputStream.nextLine();

    System.out.println(n2);
    System.out.println(n1);
    System.out.println(n3);
    System.out.println(n5);
    System.out.println(n4);
    System.out.println(n6);

    inputStream.close();

1 个答案:

答案 0 :(得分:0)

我建议不要使用nextLine()并使用此代码段:

Scanner scanner = new Scanner(new File("ContainsInts.txt"));
int [] ContainsInts = new int [100];
int i = 0;
while(scanner.hasNextInt())
{
     ContainsInts[i++] = scanner.nextInt();
}

我希望这会有所帮助,几周前我也有同样的问题大声笑