http://computing.unn.ac.uk/staff/cgpb2/web/Customers.html
上面这个链接中文件有很多数据,用浏览器打开是很快的,但是我用自己的程序去读它html代码,发现读的很慢,要读两三分钟。我把那个buffer缓冲区调大就容易出错,最大只能1024了。 请问有什么快点的方法吗? URLConnection con = null;
BufferedReader in = null;
try
{
char[] buffer =new char[1024];
URL u = new URL(url);
con = u.openConnection();
in = new BufferedReader(new InputStreamReade(con.getInputStream()));
while(in.read(buffer) != -1)
{
s=s + String.valueOf(buffer);
} in.close();
}
catch(Exception e)
{
System.out.println("页面读取失败!");
e.printStackTrace();
in.close(); }
}
上面这个链接中文件有很多数据,用浏览器打开是很快的,但是我用自己的程序去读它html代码,发现读的很慢,要读两三分钟。我把那个buffer缓冲区调大就容易出错,最大只能1024了。 请问有什么快点的方法吗? URLConnection con = null;
BufferedReader in = null;
try
{
char[] buffer =new char[1024];
URL u = new URL(url);
con = u.openConnection();
in = new BufferedReader(new InputStreamReade(con.getInputStream()));
while(in.read(buffer) != -1)
{
s=s + String.valueOf(buffer);
} in.close();
}
catch(Exception e)
{
System.out.println("页面读取失败!");
e.printStackTrace();
in.close(); }
}
这句有问题,效率低下。
你的s估计是String吧?
把s 改为StringBuffer,然后
把s=s + String.valueOf(buffer)改为s.append(buffer)
估计会快许多
lcllcl987(毛爷爷)
因为String的“+”运算符。
效率特别低!
二StringBuffer的append()
效率就高多了!
/////////////////////////////
楼主可以google一下
String 的“+”操作符效率有多低
http://htmlparser.sourceforge.net/