我有一个文档模板,我想使用该模板将客户信息与其合并(用我们在数据库中的信息替换<>,<><>。
要做到这一点,我首先需要阅读文档,更新字段,然后用标签替换数据保存。
任何人都可以帮助我想象一下;如何做到这一点并使用什么工具?
谢谢, Jigar
答案 0 :(得分:3)
我从http://docx.codeplex.com/工具找到了答案。在文档模板中进行修改是非常酷的工具。
考虑到这一点 - 尽量为你做好准备。
答案 1 :(得分:1)
您必须使用OpenXML技术来操作word文档并将动态内容插入到word文档中。 我假设你为此目的使用docx word文档。 docx文件实际上是一个压缩文件,其中包含许多xml文件,可以使用c#使用OpenXML API操作。在您的情况下,单词的内容将位于名为“document.xml”的xml中。您必须阅读此XML并替换<>占位符与数据库中的数据。 我已经就这些概念撰写了2篇文章(包含源代码)。您可以使用以下链接进行单挑。
http://www.codeproject.com/KB/office/Word_2007_Footnote.aspx http://www.codeproject.com/KB/office/Word_2007_Images.aspx
虽然它可能无法为您提供具体问题的确切解决方案,但您可以使用此方法开始(例如如何使用OpenXML API和c#读取document.xml),然后您可以继续你自己解决问题。
编辑:没有注意到你提到的.doc文件。我看到了OpenXML标签,因此回复道。我想这个解决方案仅适用于文档是.docx。答案 2 :(得分:1)
您可以尝试http://worddocgenerator.codeplex.com/。 WordDocumentGenerator是一个实用程序/示例,用于使用Visual Studio 2010和Open XML 2.0 SDK从模板生成Word文档。
答案 3 :(得分:0)
您可以与Aspose预售商联系,了解这些组件是否有用,
http://www.aspose.com/categories/.net-components/aspose.words-for-.net/default.aspx
此外,Microsoft SharePoint Server 2010具有Word自动化服务,
http://msdn.microsoft.com/en-us/library/ff742315.aspx
不要试图使用服务端Office自动化,因为它是一个死胡同,
答案 4 :(得分:0)
我相信你正在为Word文档寻找'邮件合并'功能。请参阅Aspose.Words for .NET文档的“Mail Merge and Reporting”部分中的帮助主题。
披露:我在Aspose担任开发人员传播者。
答案 5 :(得分:0)
Docmosis是一个多平台工具,可以使用.doc文件作为模板,并通过邮件合并过程填充。默认情况下,它使用文档字段,在纯文本中使用<< field>>符号