资源简介

freemarker word demo 入门级例子 详情见: http://blog.csdn.net/stormwy/article/details/26172353

资源截图

代码片段和文件信息

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;

/**
 * 使用freemark生成word
 * @author stormwy
 *
 */
public class Freemark {

public static void main(String[] args){
Freemark freemark = new Freemark(“template/“);
freemark.setTemplateName(“wordTemplate.ftl“);
freemark.setFileName(“doc_“+new SimpleDateFormat(“yyyy-MM-dd hh-mm-ss“).format(new Date())+“.doc“);
freemark.setFilePath(“bin\\doc\\“);
freemark.createWord();
}

private void createWord(){

Template t = null;
try {
t = configuration.getTemplate(templateName);
} catch (IOException e) {
e.printStackTrace();
}

File outFile = new File(filePath+fileName);
Writer out = null;
try {
out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile) “UTF-8“));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
}

Map map = new HashMapject>();
map.put(“name“ “蒙奇·D·路飞“);
map.put(“country“ “日本“);
map.put(“city“ “东京“);
map.put(“time“new SimpleDateFormat(“yyyy-MM-dd hh-mm-ss“).format(new Date()));
try {
t.process(map out);
out.close();
} catch (TemplateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

}
/**
 * freemark初始化
 * @param templatePath 模板文件位置
 */
public Freemark(String templatePath) {
configuration = new Configuration();
configuration.setDefaultEncoding(“utf-8“);
configuration.setClassForTemplateLoading(this.getClass()templatePath);
}
/**
 * freemark模板配置
 */
private Configuration configuration;
/**
 * freemark模板的名字
 */
private String templateName;
/**
 * 生成文件名
 */
private String fileName;
/**
 * 生成文件路径
 */
private String filePath;

public String getFileName() {
return fileName;
}

public void setFileName(String fileName) {
this.fileName = fileName;
}

public String getFilePath() {
return filePath;
}

public void setFilePath(String filePath) {
this.filePath = filePath;
}

public String getTemplateName() {
return templateName;
}

public void setTemplateName(String templateName) {
this.templateName = templateName;
}

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        289  2014-05-18 22:04  freemarkDemo\freemarkDemo\.classpath

     文件        388  2014-05-18 20:06  freemarkDemo\freemarkDemo\.project

     文件      12787  2014-05-18 22:13  freemarkDemo\freemarkDemo\bin\doc\doc_2014-05-18 10-13-42.doc

     文件       3567  2014-05-18 22:14  freemarkDemo\freemarkDemo\bin\Freemark.class

     文件      12770  2014-05-18 22:10  freemarkDemo\freemarkDemo\bin\template\wordTemplate.ftl

     文件    1018549  2014-05-18 22:04  freemarkDemo\freemarkDemo\lib\freemarker.jar

     文件       2816  2014-05-19 10:03  freemarkDemo\freemarkDemo\src\Freemark.java

     文件         32  2014-05-18 22:16  freemarkDemo\说明.txt

     目录          0  2014-05-18 22:14  freemarkDemo\freemarkDemo\bin\doc

     目录          0  2014-05-18 22:11  freemarkDemo\freemarkDemo\bin\template

     目录          0  2014-05-18 22:13  freemarkDemo\freemarkDemo\bin

     目录          0  2014-05-18 22:04  freemarkDemo\freemarkDemo\lib

     目录          0  2014-05-18 22:11  freemarkDemo\freemarkDemo\src

     目录          0  2014-05-18 22:13  freemarkDemo\freemarkDemo

     目录          0  2014-05-19 10:03  freemarkDemo

----------- ---------  ---------- -----  ----

              1051198                    15


评论

共有 条评论