java使用 freemarker 模板生成word文件
2016-08-05 18:48
381 查看
public class 类的名字{ private Configuration configuration = null; public 类的构造方法() { configuration = new Configuration(); configuration.setDefaultEncoding("UTF-8"); } // 要填入模本的数据文件 Map<String, Object> dataMap = new HashMap<String, Object>(); //项目的真实路径 String cxpath = request.getSession().getServletContext().getRealPath("/"); //模板的获得路径 String dir = cxpath+ "具体的位置"; Template t = null; //模板的名称 String fileName=""; try { //从什么地方加载freemarker模板文件 configuration.setDirectoryForTemplateLoading(new File(dir)); //设置对象包装器 configuration.setObjectWrapper(new DefaultObjectWrapper()); //设置异常处理器 configuration.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER); //定义Template对象 t = configuration.getTemplate(fileName); } catch (IOException e) { res = "freemarker模块错误!"; } } File folder = new File(地址); //使用了工具类判断文件夹是否存在 if(!folder.exists()){ folder.mkdir(); }else{ if(folder.isDirectory()){ for(File o:folder.listFiles()){ o.delete(); } } } // OpenOffice office2pdf = new OpenOffice(); for(int i=0;i<list.size();i++){ // 输出文档路径及名称数据加载 dataMap = (Map)list.get(i); File outFile = new File(文件地址及名称+".doc"); Writer out = null; try { out = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(outFile),"utf-8")); } catch (Exception e1) { e1.printStackTrace(); } try {//数据导入 t.process(dataMap, out); out.close(); } catch (TemplateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }
相关文章推荐
- 从github开始javamelody
- Java® Language Specification
- 使用爬虫来模拟smart qq的登录,能使用你的java来开发一款聊天机器人哦,cool!
- 初识spring(五)
- javadoc tags
- java 文件中 定义一个字符串,它的默认编码是什么?
- java this
- java使用正则表达式提取方括号中内容
- Base64.java 工具类
- Spring Shedule Task之注解实现 (两次启动Schedule Task 的解决方案)
- java commons-lang 工具包 逃脱工具 转unicode 及其他
- java 2 8 10 16
- java 数据类型
- java tools: jmap
- java tools: jstack
- java tools: jstat
- java 指导 (Java Tutorial)
- spring 统一处理http request请求返回数据,返回加密信息等
- java 关键字
- Eclipse Debug代码调试