将数组的字符串表示形式转换回java中的int数组

时间:2016-10-12 05:25:41

标签: java arrays

刚开始用Java编程。如果我有一个存储在.txt文件中的数组如下:

[10, 22, 30, 55, 10, 20, 19]

如何将其转换回在代码中使用的普通int []数组?

我需要能够将它明确地存储在这样的txt文件中,以便我可以手动更改它。我用BufferedReader来读取数组。如何将读取数组放入int []数组?

int[] field;    
try {
    String line;
    br = new BufferedReader(new FileReader(gameFilePath));
    while((line = br.readLine()) != null) { // Read the first line and assume it is the stored array
        field = line;
        System.out.println("-------------------------------------------------------------------");
        System.out.println(line);
    }
} catch(IOException e) {
    e.printStackTrace(); 
}

2 个答案:

答案 0 :(得分:2)

所以如果你的行是

[10, 22, 30, 55, 10, 20, 19]

然后你可以做

line = line.replace ("[", "");
line = line.replace ("]", "");

然后你可以使用String.split

String vals [] = line.split (",");

然后对于每个val,您可以使用

intVal [x] = Integer.valueOf (val[x].trim ());

答案 1 :(得分:-2)

你正在谈论的是解析文本。如果你知道文本的结构,那么为初学者自己实现这个的简单方法就是硬编码读取函数的规则并使用Scanner。

我在手机上,所以我稍后会详细说明,但如果我没有及时,有大量有关如何做到这一点的信息