| | |
| | | import org.apache.commons.io.IOUtils; |
| | | |
| | | import java.io.*; |
| | | import java.util.Iterator; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | public class FreemarkerUtils { |
| | |
| | | return generateString(data, str); |
| | | } |
| | | |
| | | |
| | | public static String generateInputStream(Object data, String name, Map<String, InputStream> templateStreams) throws IOException { |
| | | String result = null; |
| | | try { |
| | | StringTemplateLoader stringTemplateLoader = new StringTemplateLoader(); |
| | | for (Iterator<String> its = templateStreams.keySet().iterator(); its.hasNext(); ) { |
| | | String key = its.next(); |
| | | stringTemplateLoader.putTemplate(key, IOUtils.toString(templateStreams.get(key), "UTF-8")); |
| | | } |
| | | cfg.setTemplateLoader(stringTemplateLoader); |
| | | Template template = cfg.getTemplate(name, defaultCharacter); |
| | | StringWriter out = new StringWriter(); |
| | | template.process(data, out); |
| | | out.flush(); |
| | | result = out.toString(); |
| | | out.close(); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 将模板渲染以后保存到文件 |
| | | * |
| | | * @param templateFileDir 模板目录 |
| | | * @param templateFileName 模板文件名称 |
| | | * @param targetFilePath 渲染后文件名称 |
| | | * @param data 数据 |
| | | * @param data 数据 |
| | | * @return |
| | | */ |
| | | public static boolean renderingTemplateAndGenerateFile(String templateFileDir, |
| | | String templateFileName, String targetFilePath,Object data) { |
| | | String templateFileName, String targetFilePath, Object data) { |
| | | boolean flag = true; |
| | | try { |
| | | // 设置文件所在目录的路径 |