用java的IO技术将www.hao123.com的首页下载到本地,并保存为index.html.

解决方案 »

  1.   

    以下代码仅供参考:
    import java.io.BufferedReader;
    import java.io.FileNotFoundException;
    import java.io.InputStreamReader;
    import java.net.ConnectException;
    import java.net.HttpURLConnection;
    import java.net.URL;public class GetPage {
    /**
     * 读取页面信息
     * 
     * @param page
     *            页面的URL
     * @param charset
     *            页面的编码类型
     * @return 页面的字符串,注意换行已经被默认去掉了,如果需要,请看代码的注释部分
     */
    public static String getPage(String pageUrl, String charset) {
    try {
    URL url = new URL(pageUrl);
    HttpURLConnection con = (HttpURLConnection) url.openConnection();
    BufferedReader reader = new BufferedReader(new InputStreamReader(con.getInputStream(), charset));
    StringBuilder b = new StringBuilder();
    String line;
    while ((line = reader.readLine()) != null) {
    b.append(line);
    b.append("\r\n"); // 默认这里保存了换行,而是让所有的字符出现在一行里面。如果需要,请去掉前面的注释
    }
    return b.toString();
    } catch (FileNotFoundException ex) {
    System.out.println("NOT FOUND:" + pageUrl);
    return null;
    } catch (ConnectException ex) {
    System.out.println("Timeout:" + pageUrl);
    return null;
    } catch (Exception ex) {
    ex.printStackTrace();
    return null;
    }
    }
    }
      

  2.   

    楼上的代码挺不错的,就是怎么能把它保存到本地且是以index.html命名啊?
      

  3.   

    脱裤子放屁? 网页直接另存为不行么?
    你想每天都保持同步么?
    为什么不用c:import?
      

  4.   


    package wxxr.csdn.getpicture;import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.InputStream;
    import java.net.ConnectException;
    import java.net.HttpURLConnection;
    import java.net.URL;public class GetPage {
        /**
         * 读取页面信息
         * 
         * @param page
         *            页面的URL
         * @param dest
         *    页面保存的地址
         * @return 页面的字符串,注意换行已经被默认去掉了,如果需要,请看代码的注释部分
         */
        public static void getPage(String pageUrl, String dest) {
            try {
                URL url = new URL(pageUrl);
                HttpURLConnection con = (HttpURLConnection) url.openConnection();
                InputStream fis = con.getInputStream();
                
    FileOutputStream fos = new FileOutputStream(dest);
    int ks = 0;
    while((ks = fis.read()) != -1) {
    fos.write(ks);
    }
    fis.close();
    fos.close();
            } catch (FileNotFoundException ex) {
                System.out.println("NOT FOUND:" + pageUrl);
            } catch (ConnectException ex) {
                System.out.println("Timeout:" + pageUrl);
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    }