Java:writer.println()无法访问的语句?

时间:2014-08-31 02:40:53

标签: java compiler-errors

我得到了这个java代码,由于某种原因编译器在writer.println(linestr);处引发错误;错误:(51,13)java:unreachable statement

String linestr ="";
int row = 1, col = 1;
PrintWriter writer = new PrintWriter("C:\\Users\\User\\Selenium\\scrapjv\\output\\out.txt", "UTF-8");
while(isElementPresent(By.xpath("//div[@id='quotes_content_left_pnlAJAX']/table/tbody/tr[" + row + "]"))) {
    for (col = 1; ; col++) {
        linestr = linestr + driver.findElement(By.xpath("//div[@id='quotes_content_left_pnlAJAX']/table/tbody/tr[" + row + "]/td[" + col + "]")).getText() + ",";
    }
    writer.println(linestr);
    row++;
}
writer.close();

我只想将html标签转换为.csv,其中,分隔符用于列,\n用于行。你明白我的代码有什么不好吗?顺便说一句,也许您知道一些方便的库可以快速将html表转换为csv吗?

2 个答案:

答案 0 :(得分:4)

由于您未指定终止条件for语句在循环体中:

break

因此,程序永远不会在for (col = 1; ; col++) ^ 循环后到达代码。

答案 1 :(得分:3)

for (col = 1; ; col++) {

上面的for循环没有结束条件,所以它永远不会结束,因此永远不会到达for循环之后的语句。

以下是结束的for循环的示例:

for (col = 1; col < 10; col++) {