91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#中怎么合并多個WORD文檔

發布時間:2021-07-08 15:36:47 來源:億速云 閱讀:464 作者:Leah 欄目:編程語言

C#中怎么合并多個WORD文檔,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

今天因為客戶需要,需要將多個WORD文檔合并成為一個WORD文檔。其中,對WORD文檔的合并方式分兩種形式:

一是復制合并;

一是插入合并,即將多個文檔按照先后順序合并到另一個文檔中.

代碼如下:

using System;  using System.Collections.Generic;  using System.Text;  using Microsoft.Office.Interop.Word;  using System.Reflection;  using System.IO;  using System.Diagnostics;  namespace Eipsoft.Common  {      /// <summary>      /// Word文檔合并類      /// </summary>      public class WordDocumentMerger      {          private ApplicationClass objApp = null;          private Document objDocLast = null;          private Document objDocBeforeLast = null;          public WordDocumentMerger()          {              objApp = new ApplicationClass();          }          #region 打開文件          private void Open(string tempDoc)          {              object objTempDoc = tempDoc;              object objMissing = System.Reflection.Missing.Value;               objDocLast = objApp.Documents.Open(                   ref objTempDoc,    //FileName                   ref objMissing,   //ConfirmVersions                   ref objMissing,   //ReadOnly                   ref objMissing,   //AddToRecentFiles                   ref objMissing,   //PasswordDocument                   ref objMissing,   //PasswordTemplate                   ref objMissing,   //Revert                   ref objMissing,   //WritePasswordDocument                   ref objMissing,   //WritePasswordTemplate                   ref objMissing,   //Format                   ref objMissing,   //Enconding                   ref objMissing,   //Visible                   ref objMissing,   //OpenAndRepair                   ref objMissing,   //DocumentDirection                   ref objMissing,   //NoEncodingDialog                   ref objMissing    //XMLTransform                   );               objDocLast.Activate();          }          #endregion           #region 保存文件到輸出模板          private void SaveAs(string outDoc)          {              object objMissing = System.Reflection.Missing.Value;              object objOutDoc = outDoc;              objDocLast.SaveAs(                ref objOutDoc,      //FileName                ref objMissing,     //FileFormat                ref objMissing,     //LockComments                ref objMissing,     //PassWord                     ref objMissing,     //AddToRecentFiles                ref objMissing,     //WritePassword                ref objMissing,     //ReadOnlyRecommended                ref objMissing,     //EmbedTrueTypeFonts                ref objMissing,     //SaveNativePictureFormat                ref objMissing,     //SaveFormsData                ref objMissing,     //SaveAsAOCELetter,                ref objMissing,     //Encoding                ref objMissing,     //InsertLineBreaks                ref objMissing,     //AllowSubstitutions                ref objMissing,     //LineEnding                ref objMissing      //AddBiDiMarks                );          }          #endregion           #region 循環合并多個文件(復制合并重復的文件)          /// <summary>          /// 循環合并多個文件(復制合并重復的文件)          /// </summary>          /// <param name="tempDoc">模板文件</param>          /// <param name="arrCopies">需要合并的文件</param>          /// <param name="outDoc">合并后的輸出文件</param>          public void CopyMerge(string tempDoc, string[] arrCopies, string outDoc)          {              object objMissing = Missing.Value;              object objFalse = false;              object objTarget = WdMergeTarget.wdMergeTargetSelected;              object objUseFormatFrom = WdUseFormattingFrom.wdFormattingFromSelected;              try             {                  //打開模板文件                  Open(tempDoc);                  foreach (string strCopy in arrCopies)                  {                      objDocLast.Merge(                        strCopy,                //FileName                            ref objTarget,          //MergeTarget                        ref objMissing,         //DetectFormatChanges                        ref objUseFormatFrom,   //UseFormattingFrom                        ref objMissing          //AddToRecentFiles                        );                      objDocBeforeLast = objDocLast;                      objDocLast = objApp.ActiveDocument;                      if (objDocBeforeLast != null)                      {                          objDocBeforeLast.Close(                            ref objFalse,     //SaveChanges                            ref objMissing,   //OriginalFormat                            ref objMissing    //RouteDocument                            );                      }                  }                  //保存到輸出文件                  SaveAs(outDoc);                  foreach (Document objDocument in objApp.Documents)                  {                      objDocument.Close(                        ref objFalse,     //SaveChanges                        ref objMissing,   //OriginalFormat                        ref objMissing    //RouteDocument                        );                  }              }              finally             {                  objApp.Quit(                    ref objMissing,     //SaveChanges                    ref objMissing,     //OriginalFormat                    ref objMissing      //RoutDocument                    );                  objApp = null;              }          }          /// <summary>          /// 循環合并多個文件(復制合并重復的文件)          /// </summary>          /// <param name="tempDoc">模板文件</param>          /// <param name="arrCopies">需要合并的文件</param>          /// <param name="outDoc">合并后的輸出文件</param>          public void CopyMerge(string tempDoc, string strCopyFolder, string outDoc)          {              string[] arrFiles = Directory.GetFiles(strCopyFolder);              CopyMerge(tempDoc, arrFiles, outDoc);          }          #endregion           #region 循環合并多個文件(插入合并文件)          /// <summary>          /// 循環合并多個文件(插入合并文件)          /// </summary>          /// <param name="tempDoc">模板文件</param>          /// <param name="arrCopies">需要合并的文件</param>          /// <param name="outDoc">合并后的輸出文件</param>          public void InsertMerge(string tempDoc, string[] arrCopies, string outDoc)          {              object objMissing = Missing.Value;              object objFalse = false;              object confirmConversion = false;              object link = false;              object attachment = false;              try             {                  //打開模板文件                  Open(tempDoc);                  foreach (string strCopy in arrCopies)                  {                      objApp.Selection.InsertFile(                          strCopy,                          ref objMissing,                          ref confirmConversion,                          ref link,                          ref attachment                          );                  }                  //保存到輸出文件                  SaveAs(outDoc);                  foreach (Document objDocument in objApp.Documents)                  {                      objDocument.Close(                        ref objFalse,     //SaveChanges                        ref objMissing,   //OriginalFormat                        ref objMissing    //RouteDocument                        );                  }              }              finally             {                  objApp.Quit(                    ref objMissing,     //SaveChanges                    ref objMissing,     //OriginalFormat                    ref objMissing      //RoutDocument                    );                  objApp = null;              }          }          /// <summary>          /// 循環合并多個文件(插入合并文件)          /// </summary>          /// <param name="tempDoc">模板文件</param>          /// <param name="arrCopies">需要合并的文件</param>          /// <param name="outDoc">合并后的輸出文件</param>          public void InsertMerge(string tempDoc, string strCopyFolder, string outDoc)          {              string[] arrFiles = Directory.GetFiles(strCopyFolder);              InsertMerge(tempDoc, arrFiles, outDoc);          }          #endregion      }  }

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安岳县| 藁城市| 公安县| 龙井市| 古丈县| 鄱阳县| 观塘区| 遵义市| 松阳县| 泽普县| 全南县| 临夏县| 新营市| 桦甸市| 东宁县| 新干县| 云和县| 平原县| 通河县| 七台河市| 唐河县| 南靖县| 临沂市| 通山县| 余干县| 故城县| 嵩明县| 开封县| 佛教| 邓州市| 深泽县| 桂平市| 曲阳县| 宜章县| 藁城市| 恩平市| 泽库县| 鸡泽县| 泗阳县| 安仁县| 广安市|