【发布时间】:2014-10-04 01:46:12
【问题描述】:
该代码段旨在从文本文件中提取一行文本,将其分成单独的标记,并将每个标记存储在数组的索引中。一开始还以为是文本文件的问题,但是直接把字符串放到编辑器里面并没有解决。
使用字符串,例如:
“鸡|无|野兽|任何|0|1|1|嘿鸡!”
带有分隔符的 StringTokenizer 对象 |将前四个标记作为正确的字符串返回,但其余四个为 null。
有趣的是,另一个字符串:
“豺狼人|无|一般|任何|2|2|2|嘲讽|嘲讽”
将前五个标记作为正确的字符串返回,但其余四个也为 null。
如果问题出在最后四个标记上,为什么 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] + " ");
}
输出:
鸡无野兽
【问题讨论】: