请完成以下方法:
public static String getPageContent(String url){
    String pageContent =null;
    return pageContent;
}最好能实现:
1、自动识别url页面的编码
2、如果服务器拒绝,设置代理连接
3、返回的是url页面源代码

解决方案 »

  1.   


    public static String getPageContent(String url){
            String pageContent = "";
            try {
                File file = new File(url);
                BufferedReader in = new BufferedReader(new FileReader(file));
                String str = in.readLine();
                while (str != null) {
                    pageContent += str + "\n";
                    str = in.readLine();
                    if (null == str) {
                        break;
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            
            return pageContent;
        }
      

  2.   

    以前写过一个类似的  帮你修改了下
    import java.io.InputStream;
    import java.net.URL;
    import java.net.URLConnection;public class URLconnectionTest { public static void main(String[] args) throws Exception {
    String content  = getPageContent("http://www.baidu.com");
    System.out.println(content);
    } public static String getPageContent(String url) throws Exception {
    String pageContent = null;
    URL url2 = new URL(url);
    URLConnection urlcon = url2.openConnection();

    System.out.println(urlcon.getHeaderField("Content-Type"));
    InputStream is = urlcon.getInputStream();
    StringBuffer sbf  = new StringBuffer();

    byte[] buffer = new byte[2048];

    int length = 0;

    while(-1 != (length = is.read(buffer, 0, buffer.length)))
    {
    sbf.append(new String(buffer,0,length));
    }

    pageContent = sbf.toString();
    return pageContent;
    }}
      

  3.   

    public static void main(String[] args) throws Exception {
            String content  = getPageContent("http://www.dianping.com");
            System.out.println(content);
        }    public static String getPageContent(String url) throws Exception {
            String pageContent = null;
            URL url2 = new URL(url);
            URLConnection urlcon = url2.openConnection();
            
            System.out.println(urlcon.getHeaderField("Content-Type"));
            InputStream is = urlcon.getInputStream();
            StringBuffer sbf  = new StringBuffer();
            
            byte[] buffer = new byte[2048];
            
            int length = 0;
            
            while(-1 != (length = is.read(buffer, 0, buffer.length)))
            {
                sbf.append(new String(buffer,0,length));
            }
            
            pageContent = sbf.toString();
            return pageContent;
        }
    读取dianping.com的时候,没有结果。还有htmlparser.jar ,怎么设置代理 ?
      

  4.   

    我觉得LZ你应该把这3个问题分别用google查一下~!
      

  5.   

    htmlparser.jar ,设置代理
        System.getProperties().put("http.proxySet", "true");
        System.getProperties().put("http.proxyHost", "*.*.*.*");
        System.getProperties().put("http.proxyPort", "****");
      

  6.   

    main函数里,或者最初调用urlconnection的地方。
      

  7.   

    可以实现,用url打开连接,下载页面,然后分析页面,html里面都有编码方式的。
    如果下载失败,重新创建连接设置代理,代码懒得写了--signature-------------------
    http://www.mowker.com/qkdq.htm