读取文本文件的Java定界符

时间:2013-08-30 18:18:33

标签: java arrays delimiter

我正在尝试使用以下格式读取文本文件:

Array x
1,3,5,4

Array y
12,13,15,11

并把它放在两个数组中,但我只想要整数。 我应该使用什么分隔符来忽略String和空行?

这是我将int放入数组的代码。顺便说一句,我正在使用扫描仪来读取文件:

Scanner sc = null;

     try
     {
     sc = new Scanner(new FileInputStream("C:\\x.txt"));
     sc.useDelimiter("");  // What will I put inside a quote to get only the int values?
     }
     catch(Exception e)
     {
     System.out.println("file not found!");
     }
int[] xArray = new int[4];
int[] yArray = new int[4];

     while (sc.hasNextInt( )){
         for(int i=0; i<4; i++){
            xArray[i] = sc.nextInt( );
        }
         for(int i=0; i<4; i++){
            yArray[i] = sc.nextInt( );
        }
    }

我想要的是

int[] xArray = {1,3,5,4}
int[] yArray = {12,13,15,11}

我希望你明白:)

感谢。

1 个答案:

答案 0 :(得分:2)

我建议您使用bufferedreader而不是扫描仪。您可以使用以下代码:

BufferedReader br=new BufferedReader(new FileReader("your file name"));
br.readLine(); //it will omit first line Array x
String x=br.readLine(); //it return second line as a string
String[] x_value=x.split(","); //You can parse string array into int.

这适用于Array x。您可以对阵列y执行相同的操作。然后解析成int。