解析HTML时,每当我有'>'char
时,我需要检查它后面是否有数字。该号码可以是1位,2位或3位数字。从Java中的HTML字符串解析数字
该代码似乎没问题,但我总是得到一个StringIndexOutOfBoundException
。
代码:
while (matches < 19)
{
more = dataInHtml.indexOf(">",index);
nextOne = dataInHtml.charAt(more + 1);
nextTwo = dataInHtml.charAt(more + 2);
nextThree = dataInHtml.charAt(more + 3);
if (Character.isDigit(nextOne)) digitOne = true;
if (Character.isDigit(nextTwo)) digitTwo = true;
if (Character.isDigit(nextThree)) digitThree = true;
if (digitThree)
{
data[matches] = dataInHtml.substring(more + 1, 3);
matches++;
digitThree = false;
digitTwo = false;
digitOne = false;
index = more + 3;
itWasADigit = true;
}
if (digitTwo)
{
data[matches] = dataInHtml.substring(more + 1, 2);
matches++;
digitTwo = false;
digitOne = false;
index = more + 2;
itWasADigit = true;
}
if (digitOne)
{
data[matches] = dataInHtml.substring(more + 1, 1);
matches++;
digitOne = false;
index = more + 1;
itWasADigit = true;
}
if (!(itWasADigit))
{
index = more + 1;
itWasADigit = false;
}
}
将字符转换为ASCII并比较值 – orangegoat 2013-02-08 15:45:12
哪一行正在执行StringIndexOutOfBoundException? – 2013-02-08 15:46:26
data [matches] = dataInHtml.substring(more + 1,2); – Alpan67 2013-02-08 15:48:31