C# 復制Word(復制全部內容、部分內容、頁眉頁腳)
阿新 • • 發佈:2018-06-22
images 來講 打開 object cto wpar -o main 技術 本篇示例將介紹C# 復制Word文檔的方法。根據不同的需要,我們將復制Word文檔分三種情況來講述,具體包括以下幾點:
- 復制整個Word文檔
- 復制文檔中的部分內容
- 復制頁眉或者頁腳
工具使用
- Free Spire.Doc for .NET 6.3
- Visual Studio
PS:在以下示例中需要添加引用類庫Spire.Doc.dll。(dll可在安裝路徑下的Bin文件夾裏獲取dll)
示例演示
1.復制全部文檔內容
源文檔:
需要復制到以下目標文檔:
【C#】
using Spire.Doc; namespace CopyWord_Doc { class Program { static void 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 { static void 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 { static void 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"); } } }
復制結果:
同樣復制頁腳也是可以的。
以上為本次示例介紹的全部內容。
如需轉載,請註明出處。
C# 復制Word(復制全部內容、部分內容、頁眉頁腳)