关于java:获取String的网页内容非常慢

Get web page content to String is very slow

我用httpurlConnection.getinputstream()下载了一个网页,为了将内容转换为字符串,我执行了以下方法:

1
2
3
4
5
6
7
8
9
10
11
12
13
String content="";
isr = new InputStreamReader(pageContent);
br = new BufferedReader(isr);
try {
    do {
            line = br.readLine();
            content += line;
        } while (line != null);
        return content;
    } catch (Exception e) {
        System.out.println("Error:" + e);
        return null;
    }

页面的下载速度很快,但将内容转换为字符串的处理速度非常慢。还有另一种方法可以更快地将内容转换为字符串?

我把它转换成要插入数据库的字符串。


按字节数读入缓冲区,而不是像行那样任意读取。单凭这一点就应该是加速这一进程的良好开端,因为读者不必找到行尾。


StringBuffer代替。

编辑示例:

1
2
3
4
5
6
StringBuffer buffer=new StringBuffer();

for(int i=0;i<20;++i)
  buffer.append(i.toString());

String result=buffer.toString();


我正在使用jsoup获取页面的指定内容,这里有一个基于jquery和jsoup的Web演示,要捕获网页的任何内容,您应该为需要捕获的页面内容指定ID或类:http://www.gbin1.com/technology/democenter/20120720jsoupjquerystratchpage/index.html


使用blob/clob将内容直接放入数据库。逐行建立字符串并将其放入数据库的具体原因是什么??