0
代码段意味着从文本文件中提取一行文本,将其分离为单独的标记,并将每个标记存储在数组的索引中。起初我认为问题出现在文本文件中,但直接将该字符串放入编辑器中并未解决问题。StringTokenizer返回null而不是字符串
有了一个字符串,如: “鸡|无|野兽|任何| 0 | 1 | 1 |嘿鸡”
带分隔符的StringTokenizer对象|将前四个令牌返回为适当的字符串,但对于其余四个则返回null。
有趣的是,另一个字符串:
“豺狼|无|一般|任何| 2 | 2 | 2 |嘲讽|嘲讽”
将返回第一个五个标记为适当的字符串,但对于其余四个也是空的。
如果问题出在最后四个令牌上,为什么StringTokenizer以这种方式返回空值?
代码:
String[] parameter = new String[10];
String rawTxt = "Chicken|None|Beast|Any|0|1|1|Hey Chicken!";
StringTokenizer t = new StringTokenizer(rawTxt, "|");
for (int i = 0; i < t.countTokens(); i++) {
parameter[i] = t.nextToken();
System.out.print(parameter[i] + " ");
}
输出:
鸡无兽,凡
感谢指向String.split()的指针。 – 2014-10-04 13:27:04