java 生成页面_Java web应用中自动生成文章html页面的实现

package com.java.yanjie.translate;

import java.util.*;

import java.io.*;

import java.text.*;

/*

* 使用该类注意事项:功能:封装对目录和文件的相关操作。

* 2:必须先调用setUrl()方法设置文件和目录操作的绝对路径,然后调用createHtml(String content,String id)

* 创建指定名称和内容的文件。创建的文件保存在如下格式的路径下:根目录/n/year/monthday/*.html

* 如:在2009-10-31 创建的文件位于:/n/2009/1031/id.html

*

*

* */

public class JspToHtml {

private String baseUrl="D:\\java_workspace\\AjaxTrip\\WebContent";

private String prefixFold="\\n";

private String foldUrl;

/*

* 类的功能:封装对目录和文件的操作

* */

public JspToHtml(){

}

/*

* name:setUrl

* function:设置目录和文件操作的时使用的根路径(web应用程序的根文件夹的绝对路径)

* */

public void setUrl(String baseUrl){

this.baseUrl=baseUrl;

}

private String getBaseUrl(){

return baseUrl;

};

/*

* name:setFoldUrl

* function:设置文件目录结构字符串

* */

private void setFoldUrl(String fileUrl){

this.foldUrl=fileUrl;

}

private String getFoldUrl(){

return foldUrl;

}

private String getPrefixFold(){

return prefixFold;

}

/*

* name;createHtml

* function:创建html文件,内容是content,名称是id.html

*

* */

public boolean createHtml(String content,String id){

boolean bool=false;

String cont=content;

String id1=generateFileNameStr();

String fileName=id+".html";

FileWriter toFile;

BufferedWriter out;

try{

if(formatUrl()){

toFile=new FileWriter(getFoldUrl()+"\\"+fileName);

out=new BufferedWriter(toFile);

out.write(cont,0,cont.length());

out.close();

toFile.close();

bool=true;

}

}

catch(IOException ioe){

ioe.printStackTrace();

}

return bool;

}//createHtml

/*

* name:deleteHtml

* function:删除指定id(文件名称去除后缀)的html文件

*

* */

public boolean deleteHtml(String htmlId){

boolean bool=false;

String name=htmlId;

if(htmlId==null){

return bool;

}

String yearStr=htmlId.substring(0, 4);

String monthDayStr=htmlId.substring(4,8);

String fileUrl=getBaseUrl()+getPrefixFold()+"\\"+yearStr+"\\"+monthDayStr+"\\"+htmlId+".html";

File file_del=new File(fileUrl);

if(file_del.exists()){

file_del.delete();

bool=true;//删除成功标志

}

return bool;

}

/*

* name:formatUrl

* function:检查当前日期的文件目录结构是否存在,若不存在,则创建对应的目录结构,并且若目录结构存在,

* 则保存该目录结构字符串 保存

*

* */

private boolean formatUrl(){

/*

如果存放当前日期文件的目录结构不存在,则创建对应的目录结构

* */

boolean bool=false;

File file=new File(getBaseUrl());

if(file.exists()&&file.isDirectory()){

String foldStr=getTodayFilePath();

File filePath=new File(foldStr);

if(!filePath.exists()){

filePath.mkdirs();

}

if(filePath.isDirectory()){

bool=true;

setFoldUrl(foldStr);

}

}

return bool;

}//formatUrl()

//存放*.html的目录结构: .../.../根目录/年/月日/*.html

/*

* name:getTodayFilePath

* function:该方法返回文件名之前的部分呢

* */

private String getTodayFilePath(){

String tPath="";

String dateStr[];

dateStr=new String[2];

String patternStr[]={"yyyy","MMdd"};

dateStr[0]=new SimpleDateFormat(patternStr[0]).format(new Date());

dateStr[1]=new SimpleDateFormat(patternStr[1]).format(new Date());

tPath=getBaseUrl()+getPrefixFold()+"\\"+dateStr[0]+"\\"+dateStr[1];

return tPath;

}

private String generateFileNameStr(){

String fileName="";

fileName=new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());

return fileName;

}

/*

* main 方法测试类是否正常工作

*

* */

public static void main(String args[]){

JspToHtml jspToHtml=new JspToHtml();

jspToHtml.createHtml("aa", "11");

System.out.println("create html success!!");

jspToHtml.deleteHtml("20091031191355");

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值