我需要帮助:
我正在制作一个可以从html中读出特定字符串的程序。
我的代码:
String html = client.request(URL);
// is more or less = [html]<meta itemProp="name" content="[my target]"/> [html]
String searchString = "<meta itemProp=\"name\" content=\"";
String searchEndString = "\"/>";
while (true) {
int from = html.indexOf(searchString);
if (from == -1) {
break;
}
String temp = html.substring(from);
int to = temp.indexOf(searchEndString, from); //this is somehow -1
String name = temp.substring(searchString.length(), to);
// DO sth with name
html = temp.substring(to);
}
例外:
线程“ main”中的异常java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:-32
在第45行的java.lang.String.substring(未知来源)处
String name = temp.substring(searchString.length(), to);
引发异常,因为此时to
是-1
。
int to = temp.indexOf(searchEndString, from);
为什么导致-1
我已经尝试了一个自定义的html
字符串,该字符串有效。
预先感谢:)