最新要做个根据已有doc模板生成新的doc文件项目,查了相关资料,比较好用的是poi和jword,但是jword需要付费,免费30天;但是poi也有弊端,最新版的说是支持java,不支持Android,大家可以试试;废话不多说,直接上干活:
/**
* 生成一个doc文件,主要用于直接读取asset目录下的模板文件,不用先复制到sd卡中
* @param templetDocInStream 模板文件的InputStream
* @param targetDocPath 生成的目标文件的完整路径
* @param dataMap 替换的数据*/
public static void writeToDoc(InputStream templetDocInStream, String targetDocPath, Map<String,String> dataMap){
try
{
//得到模板doc文件的HWPFDocument对象
HWPFDocument HDoc = new HWPFDocument(templetDocInStream);
// 获取word文本内容,整个文本
Range range = HDoc.getRange();
// 替换文本内容,将自定义的$xxx$替换成实际文本
for(Map.Entry<String, String> entry : dataMap.entrySet())
{
range.replaceText(entry.getKey(), entry.getValue());
}
//写到另一个文件中
FileOutputStream out = new FileOutputStream(targetDocPath, true);
//把doc输出到输出流中
HDoc.wri