读取文件时内联检查整数

时间:2013-12-06 03:12:55

标签: java validation

这是在java中。 inFile是一个扫描仪。 我必须从文本文件中读取并将信息存储在数组中。文本文件包含整数和字符串。我创建了一个字符串数组来存储所有数据。

数据是关于城市的信息如下:

1 LV Las Vegas 500000 300

2 B Bakersfield 150000 400

我需要将城市名称存储为数组中的一个字段,即使它是两个单词。是否有内联方法来检查文本文件中的下一个项是否为整数?如果它是一个整数,我想存储在数组中,如果它是一个字符串,我想与前一个字段连接。

这就是我所拥有的。我试过我们isDigit,就像我下面的代码一样,但是它没有用。

private static Scanner inFile;
inFile = new Scanner(new File("city.dat"));

while (inFile.hasNext()){
        for (int i = 0; i < 20; i++){
            for (int j = 0; j<5; j++){
                if (i == 3){
                    String temp = inFile.next();

                    // if (temp.isDigit){

                     }
                }
                cities[i][j]=inFile.next();
            }
        }
    }

提前谢谢。

1 个答案:

答案 0 :(得分:2)

假设inFileScanner个对象;你可以试试这个:

while (inFile.hasNext()){
        for (int i = 0; i < 20; i++){
            for (int j = 0; j<5; j++){
                if (j == 2) {
                     StringBuilder temp = new StringBuilder(inFile.next());

                     while(!inFile.hasNextInt()){
                         temp.append(" " + inFile.next());
                     }
                     cities[i][j]=temp.toString();
                     continue;
                }
                cities[i][j]=inFile.next();
            }
        }
    }

注意if ( j == 2 );我猜你想对这个条目的第三个字段进行检查吗?