天天看點

JSP生成靜态頁面HTML的一種方法(一)

[url]http://www.easydone.cn/014/200603251129082732.htm[/url]

[code]

package com.easydone.cn.tools.utils;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileOutputStream;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.PrintWriter;

import java.net.HttpURLConnection;

import java.net.URL;

import java.util.Date;

public class MakeHtml {

private static long star = 0;

private static long end = 0;

private static long ttime = 0;

//傳回html代碼

public static String getHtmlCode(String httpUrl){

Date before = new Date();

star = before.getTime();

String htmlCode = "";

try {

InputStream in;

URL url = new java.net.URL(httpUrl);

HttpURLConnection connection = (HttpURLConnection)url.openConnection();

connection = (HttpURLConnection) url.openConnection();

connection.setRequestProperty("User-Agent","Mozilla/4.0");

connection.connect();

in = connection.getInputStream();

java.io.BufferedReader breader = new BufferedReader(new InputStreamReader(in , "GBK"));

String currentLine;

while((currentLine=breader.readLine())!=null){

htmlCode+=currentLine;

}

} catch (Exception e) {

e.printStackTrace();

}finally{

Date after = new Date();

end = after.getTime();

ttime = end-star ;

System.out.println("執行時間:"+ttime +"秒");

}

return htmlCode;

}

//存儲檔案

public static synchronized void writeHtml(String filePath,String info,String flag) {

PrintWriter pw = null;

try {

File writeFile = new File(filePath);

boolean isExit = writeFile.exists();

if (isExit != true) {

writeFile.createNewFile();

} else {

if (!flag.equals("NO")) {

writeFile.delete();

writeFile.createNewFile();

}

}

pw = new PrintWriter(new FileOutputStream(filePath, true));

pw.println(info);

pw.close();

} catch (Exception ex) {

System.out.println(ex.getMessage());

}finally{

pw.close();

}

}

public static void main(String[] args) {

String url = "http://www.easydone.cn/index.htm";

writeHtml("c:/demo.htm",getHtmlCode(url),"NO");

}

}

[/code]