我在解析时面临一个问题,我有一个字符串:String str="20|^64|^New Income - GROWTH|^10.0|^27-Dec-2011"
我想用分隔符“|^”来解析它。
我试过这样:
ArrayList<String> stocklist = IOUtil.parseResponse(str, "|^");
这是 parseResponse() 方法:
public static ArrayList<String> parseResponse(String input, String delimeter) {
ArrayList<String> parsed_strings = new ArrayList<String>();
while (true) {
int i = input.indexOf(delimeter);
if (i >= 0) {
String s = input.substring(0, i);
parsed_strings.add(s.trim());
input = input.substring(i + delimeter.length(), input.length());
} else {
break;
}
}
if (parsed_strings.size() < 1) {
parsed_strings.add(input);
}
return parsed_strings;
}
但我没有得到最后一个元素27-Dec-2011
。我得到 outOfBoundException 为:java.lang.IndexOutOfBoundsException: Invalid index 4, size is 4
任何帮助将不胜感激。提前致谢。