Android根据word模板文档将表单数据生成word文档的方案整理
版权声明:本文为HaiyuKing原创文章,转载请注明出处!
前言
尝试的方案包括以下几种:
freemarker
- 只能在java项目上运行,无法在Android项目上运行;
参考资料:《FreemarkerJavaDemo【Android将表单数据生成Word文档的方案之一(基于freemarker2.3.28,只能java生成)】》
poi
- 解析doc文件可以在Android项目上运行;
- 解析Docx文件只能在java项目上运行,无法在Android项目上运行;
- 暂时未实现替换图片功能;
参考资料:《PoiDemo【Android将表单数据生成Word文档的方案之二(基于Poi4.0.0)】》【目前使用这个】
《PoiDocxDemo【Android将表单数据生成Word文档的方案之二(基于Poi4.0.0),目前只能java生成】》
JWord
- 即支持java项目也支持Android项目;
- 需要花钱(JWord只有30天的试用期,过期需要购买,299欧元forever~~2129.1491人民币元)
参考资料:《官网》
demo中的替换文本用法很简单:
import com.independentsoft.office.word.WordDocument; public class Example { public static void main(String[] args) { try { WordDocument doc = new WordDocument("c:\\test\\input.docx"); doc.replace("[CustomerID]", "12345"); doc.replace("[CustomerName]","John Smith"); doc.save("c:\\test\\output.docx", true); } catch (Exception e) { System.out.println(e.getMessage()); e.printStackTrace(); } } }