我正在尝试使用java中的StringTokeniser来标记文本文件。但问题是它只需要该行的最后一个字。几乎没有什么帮助。此示例代码是map-reduce函数的一部分。
String profile;
StringTokenizer inputKey=new StringTokenizer(value.toString());
while(inputKey.hasMoreTokens()){
String input=inputKey.nextToken();
if(!input.endsWith("</id>")){
textInput.set(input);
} else {
profile=input.substring(4,15);
profileId.set(profile);
}
}
答案 0 :(得分:2)
您应该像大多数人所说的那样使用调试器,并停止使用StringTokenizer并启动String.split ..
您已经实例化了没有分隔符的StringTokenizer对象,您可以显式设置分隔符(可以是“,”或“。”在您的情况下)或使用同时接受分隔符和字符串的构造函数试图解析。
答案 1 :(得分:0)
这些问题非常适合学习如何调试程序。