我正在尝试找出一个作业,如何从 txt 文件中获取标记(这些标记是一组没有空格分隔的字母/数字)并将它们添加到数组中。
我的数组是这样设置的
private String[] arrayOfTokens;
txt 文件的内容如下
10 tewnty 30.5 star-fish -5
1 two 3
4 five 6 seven
jello 9 hike 5
10 9 8 7 6 5 4 3 2 1
需要明确的是,第一行将有 5 个标记(“10”、“20”、“30.5”、“star-fish”和“-5”),第二行将有 3 个标记(“1”、 “二”和“三”)
然而,让我失望的一件事是它说的是......“第一个文本行将导致五个标记存储在位置 [0][0], [0][1] , [0 ][2] 、 [0][3] 和 [0][4]。第二个文本行将导致三个标记存储在位置 [1][0]、[1][1] 和 [ 1][2]。”。它只说我需要一个数组,所以我不确定那是什么。
我只是在网上搜索了一些东西,但我发现的只是将整个 txt 文件放入一个数组中。我只是想添加 token 。有人有什么可以让我走上正轨的吗?
最佳答案
可以使用锯齿数组来解决这个问题。交错数组是一种数组,其元素是数组,但可以具有不同的维度和大小。这是您可以尝试的代码:
int numberOfLineOfTheFile; /* put the number of line of your file here */
String[][] tokens = new String[numberOfLineOfTheFile][];
String[] arrayOfTokens;
try (BufferedReader br = new BufferedReader(new FileReader(file))) {
String line;
int i = 0;
while ((line = br.readLine()) != null) {
arrayOfTokens = line.split(" ");
tokens[i++] = arrayOfTokens;
}
}
关于java - 将 "tokens"添加到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43564423/