qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          c#編程實現word 文檔如何導入SQL Server數據庫表中

            操作WORD配置說明
            引入:Word的對象庫文件“MSWORD.OLB”(word 2000為MSWORD9.OLB)
            1.運行Dcomcnfg.exe
            2.組件服務――計算機――我的電腦――DCOM配置――找到microsoft word 文檔
            3.點擊屬性
            4.選擇“安全性”
            5.選定“使用自定義訪問權限”和“使用自定義啟動權限”
            6.分別編輯權限,添加Everyone(ASPNET,VS Developers,Debugger User)
            7.選擇“身份標識”,在選定“交互式用戶” 即可
            8.在Web.config里加 identity impersonate="true"/
            C#:
            ASP.NET操作Word文檔一直是一個大家比較關心的話題,其實在ASP.NET里操作Word文檔一點也不難,大家只需按本文提示,就能輕輕松松操作Word文檔!
            一、準備工作
            首先請確認服務端已經安裝了Office Word(以下將以Office XP為例),操作系統為win2000或XP,并且已配置好.NET的運行環境及安裝VS.NET C#開發環境后,我們就可以打開VS.NET,并新建一個Visual C#項目ASP.NET Web應用程序,位置為“”。(如圖一)
            二、引用Word對象庫文件
            要操作Word,我們就需要Word的對象庫文件“MSWORD.OLB”(word 2000為MSWORD9.OLB),通常安裝了Office Word后,你就可以在office安裝目錄的Office10文件夾下面找到這個文件,當我們將這個文件引入到項目后,我們就可以在源碼中使用各種操作函數來操作Word。具體做法是打開菜單欄中的項目添加引用瀏覽,在打開的“選擇組件”對話框中找到MSWORD.OLB后按確定即可引入此對象庫文件,vs.net將會自動將庫文件轉化為DLL組件,這樣我們只要在源碼中創建該組件對象即可達到操作Word的目的!
            三、Webform1.aspx.cs代碼
            完成添加引用后,MSWORD.OLB已經轉化為相關DLL文件并放置于項目的BIN目錄下了,這樣我們只需在源碼中創建該對象,并使用word庫文件內置的操作函數即可輕松實現操作Word,Webform1.aspx.cs源碼請參見
            五、web.config設置
            web.config文件還需添加一句 identity impersonate="true"/以啟用模擬身份,因為默認ASPNET這個用戶是沒有權限訪問Word.ApplicationClass(),當啟用模擬身份后所有頁面將會使用匿名Internet用戶帳戶(IUSR_machinename)這個用戶名的權限執行,這樣我們就能成功訪問Word.ApplicationClass()并在ASP.NET中操作Word!
          //傳文檔所在路徑 返回文檔內容
          public string Doc2Text(string docFileName)
          {
          //實例化COM
          Microsoft.Office.Interop.Word.ApplicationClass wordApp = new Microsoft.Office.Interop.Word.ApplicationClass();
          object fileobj = docFileName;
          object nullobj = System.Reflection.Missing.Value;
          //打開指定文件(不同版本的COM參數個數有差異,一般而言除第一個外都用nullobj就行了)
          Microsoft.Office.Interop.Word.Document doc = wordApp.Documents.Open(ref fileobj, ref nullobj, ref nullobj,
          ref nullobj, ref nullobj, ref nullobj,
          ref nullobj, ref nullobj, ref nullobj,
          ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj
          );
          //取得doc文件中的文本
          string outText = doc.Content.Text;
          //關閉文件
          doc.Close(ref nullobj, ref nullobj, ref nullobj);
          //關閉COM
          wordApp.Quit(ref nullobj, ref nullobj, ref nullobj);
          //返回
          return outText;
          }
            當然 在讀取的時候會有損壞的文件 和被加密的文件等問題 總之C#和office的兼容性不太好
            別忘了要引用word的dll
            引用文件夾 右鍵添加引用 在組件里找Microsoft.Office.Interop.Word
            讀出了word文檔再把它寫入sql server數據庫就可以了

          posted on 2013-09-27 10:35 順其自然EVO 閱讀(344) 評論(0)  編輯  收藏 所屬分類: 數據庫

          <2013年9月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 唐河县| 大宁县| 沛县| 奎屯市| 临邑县| 南和县| 珠海市| 瑞丽市| 青冈县| 大悟县| 黑水县| 宜兰市| 顺义区| 法库县| 集安市| 大石桥市| 聊城市| 金山区| 玛多县| 阜康市| 墨脱县| 咸宁市| 廊坊市| 广西| 平乐县| 岱山县| 墨竹工卡县| 阜城县| 高密市| 惠水县| 和顺县| 都江堰市| 洞头县| 东莞市| 策勒县| 左云县| 南开区| 屏南县| 黎川县| 余干县| 始兴县|