C# 复制Word文档

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C# 复制Word(复制全部内容、部分内容、页眉页脚)
本篇示例将介绍C# 复制Word文档的方法。

根据不同的需要,我们将复制Word文档分三种情况来讲述,具体包括以下几点:
●复制整个Word文档;
●复制文档中的部分内容;
●复制页眉或者页脚。

工具使用
●Free Spire.Doc for .NET 6.3
●Visual Studio
注意:在以下示例中需要添加引用类库Spire.Doc.dll。

(dll可在安装路径下的Bin文件夹里获取dll)
1.复制全部文档内容
源文档:
需要复制到以下目标文档:
C#
using Spire.Doc;
namespace CopyWord_Doc
{
class Program
{
staticvoid Main(string[] args)
{
//新建Word文档1,用于加载源文档
Document sourceDoc = new Document("sample.docx");
//新建Word文档2,用于加载复制内容的目标文档
Document destinationDoc = new Document("target.docx");
//遍历源word文档中的所有section,并把内容复制到目标word文档foreach (Section sec in sourceDoc.Sections)
{
foreach (DocumentObject obj in sec.Body.ChildObjects)
{
destinationDoc.Sections[0].Body.ChildObjects.Add(obj.Clone()); }
}
//保存并打开复制的目标文档
destinationDoc.SaveToFile("target.docx", FileFormat.Docx2010); System.Diagnostics.Process.Start("target.docx");
}
}
}
复制结果:
2. 复制部分内容(带格式复制)C#
using Spire.Doc;
using Spire.Doc.Documents;
namespace CopyPara_Doc
{
class Program
{
staticvoid Main(string[] args)
{
//创建Word文档1,加载源文档
Document doc1 = new Document();
doc1.LoadFromFile("sample.docx");
//创建一个空白文档,作为复制内容的目标文档Document doc2 = new Document();
//获取Word文档1第一节的第一段和第二段
Section s = doc1.Sections[0];
Paragraph p1 = s.Paragraphs[0];
Paragraph p2 = s.Paragraphs[1];
//在Word文档2中添加Section,并将文档1中的第一、二段的内容复制到文档2中Section s2 = doc2.AddSection();
Paragraph NewPara1 = (Paragraph)p1.Clone();
s2.Paragraphs.Add(NewPara1);
Paragraph NewPara2 = (Paragraph)p2.Clone();
s2.Paragraphs.Add(NewPara2);
//保存并打开复制后的文档
doc2.SaveToFile("copy.docx", FileFormat.Docx2010);
System.Diagnostics.Process.Start("copy.docx");
}
}
}
源文档:
复制结果:
3.复制页眉或页脚
这里以复制页眉为例
源文档中的页眉效果:
C#
using Spire.Doc;
namespace CopyHeaderAndFooter_Doc
{
class Program
{
staticvoid Main(string [] args) {
//新建Word 文档1,并加载带页眉的源文档
Document doc1 = new Document ();
doc1.LoadFromFile("test1.docx");
//获取文档1的页眉
HeaderFooter Header = doc1.Sections[0].HeadersFooters.Header;
//新建文档2,并加载目标文档
Document doc2 = new Document("test2.docx");
//遍历文档2中的所有Section
foreach (Section section in doc2.Sections)
{
foreach (DocumentObject obj in Header.ChildObjects)
{
//将复制的页眉对象添加到section
section.HeadersFooters.Header.ChildObjects.Add(obj.Clone()); }
}
//保存并打开文档
doc2.SaveToFile("copyHeader.docx", FileFormat.Docx2013); System.Diagnostics.Process.Start("copyHeader.docx");
}
}
}
复制结果:
同样复制页脚也是可以的。

《本文完》。

相关文档
最新文档