java 网页读取与存储

来源:互联网 发布:模拟人生4捏脸数据 编辑:程序博客网 时间:2024/05/16 08:48

读入 http://www.sina.com.cn 网页的内容,并以可读形式将其输出到一个文件中去

import java.io.*;import java.net.URL;/** * Created by Wu on 2017/4/17. */public class ReadURL {    public static void main(String args[]) throws Exception{        URL u = new URL("http://www.sina.com");        InputStream is = u.openStream();        is = new BufferedInputStream(is);        Reader r = new InputStreamReader(is,"UTF-8");        FileOutputStream fos = new FileOutputStream("./sina.html");        OutputStreamWriter writer = new OutputStreamWriter(fos,"UTF-8");        int c = 0;        while((c = r.read())!=-1){            writer.write(c);        }        writer.close();    }}

创建一个新浪url的InputStream类 is,再创建一个InputStreamReader r读取 is,此时注意要传入编码参数UTF-8,因为若是使用默认编码参数,会自动使用系统的编码方式。下图可以发现电脑的默认编码方式为GBK。(IntelliJ IDEA在settings->Editor->File Encodings 中查看)


因为网页的编码格式是UTF-8,所以若是不穿参的话会导致网页中文乱码。之后再创建FileOutputStream类和OutputWriter将网页写入文件。运行程序我们可得如下结果


打开此url

并未出现中文乱码

0 0