将String更改为int

时间:2013-04-25 21:57:06

标签: java file parsing methods

我有一个从文件中读取的字符串对象数组。我需要使用其中一些字符串作为整数。我写了一个方法来读取文件,但现在我只是不知道如何从文件中获取数字,这里是文件

29,,
Chute,1,0
Chute,2,0
Chute,3,0
Chute,4,0
Chute,5,0
Chute,6,0
Chute,7,0
Chute,8,0
Chute,9,0
Chute,0,1
Chute,0,2
Chute,0,3
Chute,9,1
Chute,9,2
Chute,9,3
Ladder,0,5
Ladder,1,5
Ladder,2,5
Ladder,3,5
Ladder,4,5
Ladder,5,5
Ladder,6,5
Ladder,7,5
Ladder,8,5
Ladder,9,5
Ladder,9,6

这是我的方法

public void readBoard(String file)throws FileNotFoundException
{
    File clboard = new File ("myBoard.csv");
    Scanner x = new Scanner(clboard);
    while(x.hasNext())
    {
        String c = x.nextLine();
        String [] myboard =c.split(","); 
    }
}

3 个答案:

答案 0 :(得分:1)

尝试

int numOne = Integer.parseInt(myboard[1]);
int numTwo = Integer.parseInt(myboard[2]);

split行之后

答案 1 :(得分:0)

String [] myboard = c.split(",");
if (myboard.length < 3) {
    // error message
} else {
    int i1 = Integer.parseInt(myboard[1]);
    int i2 = Integer.parseInt(myboard[2]);
}

您可能还想添加try / catch来处理NumberFormatException(当您尝试转换非数字的内容时会发生这种情况)。

答案 2 :(得分:0)

public void readBoard(String file)throws FileNotFoundException
{
    File clboard = new File ("myBoard.csv");
    Scanner x = new Scanner(clboard);
    while(x.hasNext())    {
        List<Integer> number = new ArrayList<Integer>();
        String c = x.nextLine();
        String [] myboard =c.split(",");
        for (String candid8 : myboard) {
           try {
                number.add(Integer.parseInt(candid8));
           } catch (NumberFormatException e) {
           }
        }
    }
}

您的号码现在位于数字对象中,即列表。如果这是一个更复杂的语法,请查看jflex,因为这似乎是Google的推荐。