最开始采用了npoi导出word,npoi采用的是遍历整个word文档中的段落,然后读取到标签,然后再将该标签进行替换的模式。
但是存在两个问题:
1、替换的字符串中加上换行符\n,不起作用,就是在替换的字符串是不能换行的,因为他认为,你换了行,就生成了一个新的段落。对原来的段落遍历会产生影响,即会产生死循环。
2、如果想动态生成一个表格,在npoi中比较困难,需要写很多的代码。而且如果word模板中本身有一个表格,表格中有段落,如果只遍历段落,表格中的段落是不会读取到的。

最后重新查找导出word的解决方案,最终找到了Aspose.Words.dll,Aspose包括了操作excel、word、pdf等等,而且有net、java两种语言。而且是收费的,但网上有破解版。

附件中是从网上下载的一个例子。(百度云分享)

https://pan.baidu.com/s/1qYyJ6v6