我相信我没有正确使用String Tokenizer。这里是我的代码:字符串标记器在java中的错误用法
buffer = new byte[(int) (end - begin)];
fin.seek(begin);
fin.read(buffer, 0, (int) (end - begin));
StringTokenizer strk = new StringTokenizer(new String(buffer),
DELIMS,true);
正如你可以看到我读线的一大块从一个文件(结束和开始都行号),我的数据transfering到字符串标记。我的分隔符是:
DELIMS = "\r\n ";
因为我想分隔在它们之间有空格的单词,或者在下一行。然而,这段代码有时也会分隔整个单词。什么可能是解释?我的DELIMS字符串是否构思错误?
而且我传递“真”作为参数传递给标记生成器,因为我想为令牌,以及要处理的delimitators。(我想这是因为我想算我目前在该行)
你可以帮我吗。非常感谢。
此操作是否在循环中执行? – dasblinkenlight
请停止使用StringTokenizer:“StringTokenizer是一个遗留类,由于兼容性原因而保留,尽管在新代码中不鼓励使用它。建议任何寻求此功能的人都使用String或java.util.regex包的拆分方法。“:http://docs.oracle.com/javase/6/docs/api/java/util/StringTokenizer.html – zengr
此操作由多个线程使用,复制的工作人员的形式 – biggdman