复制Word doc的内容并粘贴到另一个

我如何以编程方式复制一个word文档的内容并使用C#将其粘贴到另一个word文档?

我基本上想要复制个人资料(这是一个单词doc的内容),然后将其插入报告中。

任何帮助将不胜感激

谢谢

你可以这样做:

object docStart = worddocpromo.Content.End - 1; object docEnd = worddocpromo.Content.End; object start = SubDoc.Content.Start; object end = SubDoc.Content.End; SubDoc.Range(ref start, ref end).Copy(); Microsoft.Office.Interop.Word.Range rng = worddocpromo.Range(ref docStart, ref docEnd); rng.Paste(); 

假设docx,请使用http://powertools.codeplex.com/的DocumentBuilder组件

有关详细信息,请参阅http://blogs.msdn.com/b/ericwhite/archive/2009/02/05/move-insert-delete-paragraphs-in-word-processing-documents-using-the-open-xml -sdk.aspx

你可以这样做:

  Word.Application word = new Word.Application(); word.Visible = true; Word.Document d1 = word.Documents.Add(); Word.Document d2 = word.Documents.Open(@"E:\00-Word\Test.docx"); Word.Range oRange = d2.Content; oRange.Copy(); d1.Content.PasteSpecial(DataType:Word.WdPasteOptions.wdKeepSourceFormatting); 

这个链接应该有帮助。

使用OpenXml和C#复制Word文档

另一个建议是创建word文件的副本,并将其重命名为所需的名称,如果这适合您的解决方案。

http://www.dotnetperls.com/file-copy

如果您需要访问较旧的Word文档(Word 97等),则可以使用第三方库,无需在目标计算机上安装Word即可完全控制文档的创建和修改。 这对Web服务器特别有用。

我们过去成功使用过Syncfusion的Essential DocIO – http://www.syncfusion.com/products/reporting-edition/docio

否则,您可以使用Microsoft Office Automation库来访问较旧的Word文档 – http://support.microsoft.com/kb/301659

使用自动化库时,您需要注意很多事情,因为它们直接在目标计算机上执行Word。 在Web服务器上运行它们是一个很大的禁忌。