我用ASP的Microsoft.XMLHTTP对象可以读取万网的网页内容,而用下面JAVA读取却有问题,读出来的内容为“请与万网联系”好像是被屏蔽了,这是为什么,为什么ASP的行呢?java.net.URL pageUrl = new java.net.URL(url);//url这是万网所要读取网页地址
java.net.URLConnection pageConn = pageUrl.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(pageConn.getInputStream()));
while((fileLine=in.readLine())!=null) {
      str.append(fileLine+'\n');
}

解决方案 »

  1.   

    不要用URLConnection,这个东西很不标准,自己用Socket抄一下IE的GET/POST命令也很方便嘛
      

  2.   

    这是JavaTutorial中的一个例子,我稍微做了改动。
    用法,例如:java URLReader "http://www.163.com"//代码
    import java.net.*;
    import java.io.*;public class URLReader {
        public static void main(String[] args) throws Exception {
    if (args.length == 0) {
    System.out.println("usage: java URLReader <a URL>");
    System.exit(0);
    } URL yahoo = new URL(args[0]);
    BufferedReader in = new BufferedReader(
    new InputStreamReader(
    yahoo.openStream())); String inputLine; while ((inputLine = in.readLine()) != null)
    System.out.println(inputLine); in.close();
        }
    }
      

  3.   

    直接使用Apache的http-client就是了
      

  4.   

    不会吧,我试过用它读取很多网页,都能正常读取的,它就是发送正常的http请求,怎么会被拒绝呢。获取输入流之前应该先调用一下setDoInput(true)吧,你给我个万网地址,我试一下
      

  5.   

    http://panda.www.net.cn/cgi-bin/Check.cgi?domain=bzsp&ext=com
      

  6.   

    楼主你解决了吗,我的办法和UnAgain都不好用,估计是万网的程序是这样设置的,如果不是从浏览器访问的,那么就返回这么一句话。因为读取其它网页都是正常的,程序没错。
      

  7.   

    估计是防火墙一类的软件给屏蔽掉了,用jsp连接不上,用socket连接panda.www.net.cn,结果连接被拒绝