URL url=new URL(et.url);
URLConnection connection=url.openConnection();
connection.setConnectTimeout(3000);
            connection.setReadTimeout(3000);
connection.connect();

Scanner scanner=new Scanner(connection.getInputStream());
StringBuffer str=new StringBuffer();

//System.out.println(Thread.currentThread().getId()+"is on save String");
long curTime=System.currentTimeMillis();

for(;scanner.hasNextLine();)
{
//System.out.println(Thread.currentThread().getId()+"entering save String");
str.append(scanner.nextLine());
str.append("\n");
long durTime=System.currentTimeMillis();
if(durTime-curTime>3000)
{
break;
}
}如果不是gb2312的编码 打印出来就是乱码这个怎么解决????

解决方案 »

  1.   

    根据HTTP协议头部指定的编码方式,进行解码就可以了。如果HTTP头,没有编码内容,那就去HTML的META元素里面找,如果都找不到,自己定义一个默认编码进行解码好了。
      

  2.   

    那个SringBuffer  new的时候有个构造方法是可以指定编码的。
      

  3.   


          //如果知道网页是什么编码 可以在包装流的时候指定字符集
          Scanner scanner=new Scanner(connection.getInputStream(),"utf-8");