每天学习十分钟14之网页静态化②

来源:互联网 发布:增加一列的sql语句 编辑:程序博客网 时间:2024/06/12 19:32

第一种方法:通过url生成静态页面

import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.URL;import java.net.URLConnection;public class CmsTest {    public static void main(String[] args) {        try {            /*             * 1、通过url生成静态页面             */            // 获取url            URL url = new URL("http://www.qq.com");            // 打开链接            URLConnection connection = url.openConnection();            // javase ---> io net inputStream outputStream            // 获取输入流            InputStream input = connection.getInputStream();            /*             * 1、BufferedReader是缓冲流, InputStream是字节流,reader为字符流 可以想象成一个水管,             * 在InputStream外面包了一层, 以供读取方便, 就简单理解成, InputStream这个水管一下只能有一滴水从这里通过,             * 而BufferedReader套在这个水管上,就可以一下读一串水流              * 2、InputStreamReader是字节流通向字符流的桥梁             */            BufferedReader reader = new BufferedReader(new InputStreamReader(input, "gbk"));            // 实例化StringBuffer类,用于存储            StringBuffer strBuffer = new StringBuffer();            // 如果保证下一个 read() 不阻塞输入,则返回 True,否则返回 false            while (reader.ready()) {                // 连接一个字符串到末尾,并读取一行                strBuffer.append(reader.readLine() + "\n");            }            // 关闭流            reader.close();            input.close();            // 新建文件,用于存储输出代码            File file = new File("d:/qq.html");            // FileOutputStream:文件输出流,用于写入诸如图像数据之类的原始字节的流            // 获取输出流            BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), "gbk"));            // 数据写入            writer.write(strBuffer.toString());            // 关闭流            writer.close();        } catch (Exception e) {            e.printStackTrace();        }    }}

最后结果:在D盘生成qq.html文件的静态页面。

0 0
原创粉丝点击