=========关于JAVA输入输出流,BufferedReader.readLine()方法效率的问题=========
感觉readLine()是不是效率有点低? 
 当我读入数据的时候,如果这个数据中间没有换行, 
 那不就等于整个文件就只有1行? 
 我测试了下,读入一个网页的源代码,结果发现 
 读入这个网页的时候,耗费3秒多, 
 而把这些数据读出来的时候,用了40多S。 
 慢的厉害。 
 有没有替代的方法?只能这样一行一行的读入?   
 示例:   
 BufferedReader   in   =   new   BufferedReader(new   InputStreamReader(u.openStream())); 
 		StringBuffer   cb   =   new   StringBuffer(); 
 		String   tempCode   =    " "; 
 		long   t2   =   System.currentTimeMillis(); 
 		System.out.println( "读取网页内容耗时: "+String.valueOf(t2-t1)); 
 		//   把buffer内的值读取出来,保存到code中 
 		while   ((tempCode   =   in.readLine())   !=   null)   { 
 			cb.append(tempCode   +    '\n '); 
 			System.out.println(a); 
 		} 
 		in.close(); 
 		long   t3   =   System.currentTimeMillis(); 
 		System.out.println( "保存代码用时: "+String.valueOf(t3-t2));
------解决方案--------------------System.out.println( "读取网页内容耗时: "+String.valueOf(t2-t1));   
 你的理解是有错的,这里u.openStream()只是打开链接,并非已经读出网页内容
------解决方案--------------------原理:不用bufferreader,自己写读入的代码,但是这样可能会消耗更多的memery   
 InputStream in = new InputStreamReader(u.openStream()); 
 StringBuffer cb = new StringBuffer(); 
 byte[] bs = new byte[1024 * 16];//如果内存不是问题,可以根据文件大小,继续增加这个buffer的大小 
 long t2 = System.currentTimeMillis(); 
 while(true) { 
 int count = in.read(bs); 
 if(count == -1) { 
 break; 
 } else { 
 cb.append(new String(bs, 0, count)); 
 } 
 } 
 in.close(); 
 long t3 = System.currentTimeMillis(); 
 System.out.println( "保存代码用时: "+String.valueOf(t3-t2));