Freemarker+openOffice 模板替换JodReport

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Map;

import net.sf.jooreports.templates.DocumentTemplate;
import net.sf.jooreports.templates.DocumentTemplateException;
import net.sf.jooreports.templates.DocumentTemplateFactory;

public final class DocTemplateUtil {

  /**
   * Method to do the template merge directly in OpenOffice and export out to specifc location
   *
   * 1)The format of replaced content is like "${colour}"
   * 2)Arithmetical calculation format: ${aNumber / 2} ${aNumber + 2} ${aNumber - 2} ${aNumber * 2}
   * 3)Conditional format: [#if aNumber==3.2]...[/#if] ,[#if color=='Red']...[#else]...[/#if]
   * 4)Date formats: ${birthdat?date} , ${birthdat?time},${birthdat?datetime}
   *
   * @param sourceFile
   * the source file of template.odt
   * @param templateParams
   *        the contents need to be merged  for example:( "colour", "Red" ) ("Number" new Double(2.1))
   * @param outputFullPath
   * the location which the file is to be export to. for example "C:\\workspaces\\download.odt"
 * @throws IOException
   */

    public static voidexportMergedDocument(File sourceFile, String outputFullPath,  Map<String,Object> templateParams) throws IOException{

            DocumentTemplateFactory documentTemplateFactory = new DocumentTemplateFactory();
            DocumentTemplate template = documentTemplateFactory.getTemplate(sourceFile);
            FileOutputStream output = new FileOutputStream(new File(outputFullPath));

            try {
                template.createDocument(templateParams, output);
            } catch (DocumentTemplateException e) {
                e.printStackTrace();
            }finally {
                output.flush();
                output.close();
            }
    }
}

http://jodreports.sourceforge.net/?q=node/23

http://jodreports.sourceforge.net/docs/testapidocs/net/sf/jooreports/templates/TextInputTagTest.html

http://freemarker.org/docs/dgui_template_exp.html#dgui_template_exp_seqenceop_slice

http://www.artofsolving.com/opensource/jodconverter/guide http://nopainnogain.iteye.com/blog/819432

转载于:https://my.oschina.net/Business/blog/195503

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值