我已经看过几篇有关此事的帖子。但是他们说的不是StringTokenizer
。
这是我的输入文件:inputfile with tab delimiter
我写了一个stringTokenizer来获取一行中的每个值。所以我能够得到
1.0 3.0
delim1.0
delim3.0
so on
但是当我试图将分隔符作为参数时,它对我来说效果不佳。
while ((sCurrentLine = br.readLine()) != null) {
System.out.println(sCurrentLine);
StringTokenizer st = new StringTokenizer(sCurrentLine, args[0]);
while(st.hasMoreTokens()){
System.out.println("delim"+st.nextToken());
}
}
1.通过" "
(通过按" Tab" keyboard
中的键)作为参数,它工作正常。
2.通过"\t"
作为参数。它正在显示
1.0 3.0
delim1.0 3.0
3.通过\t
作为参数。它显示相同的
1.0 3.0
delim1.0 3.0
为什么会这样。
答案 0 :(得分:0)
"\t"
不能作为字符串传递。尝试将其作为\\\t
传递,它应该可以工作,因为\t
是一个转义序列,应该存储在原始字符或字符作为包装类中。