本篇內容主要講解“C#讀取word內容操作的方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C#讀取word內容操作的方法”吧!
C#讀取word內容的操作是我們在開發中經常會遇到的問題,那么如何C#讀取word內容的操作呢?那么這里向你介紹了7個方面,希望對你有所幫助。
C#讀取word內容1:
對項目添加引用,Microsoft Word 11.0 Object Library
C#讀取word內容2:
在程序中添加
using Word = Microsoft.Office.Interop.Word;
C#讀取word內容3:
程序中添加
Word.Application app = new Microsoft.Office.Interop.Word.Application(); //可以打開word程序 Word.Document doc = null; //一會要記錄word打開的文檔
word文檔和word程序可不是一回事奧!
C#讀取word內容4:
一般來說,對于抽取word內容,用的方法很少
public override void openFile(object fileName){} //打開文檔 public override object readPar(int i){} //讀取word文檔的第i段 public override int getParCount(){} //返回word文檔一共幾段 public override void closeFile(){} //關閉文檔 public override void quit(){} //關閉word程序 //從網頁上拷貝的目錄有時候會出現手動換行符^l,, 先將其換成回車段落標記,才能正確讀取 public void replaceChar(){}C#讀取word內容5:代碼
public override void openFile(object fileName) ...{ try ...{ if (app.Documents.Count > 0) ...{ if (MessageBox.Show( "已經打開了一個word文檔, 你想關閉重新打開該文檔嗎?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes) ...{ object unknow = Type.Missing; doc = app.ActiveDocument; if (MessageBox.Show( "你想保存嗎?", "保存", MessageBoxButtons.YesNo) == DialogResult.Yes) ...{ app.ActiveDocument.Save(); } app.ActiveDocument.Close(ref unknow, ref unknow, ref unknow); app.Visible = false; } else ...{ return; } } } catch (Exception) ...{ //MessageBox.Show("您可能關閉了文檔"); app = new Microsoft.Office.Interop.Word.Application(); } try ...{ object unknow = Type.Missing; app.Visible = true; doc = app.Documents.Open(ref fileName, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow, ref unknow); } catch (Exception ex) ...{ MessageBox.Show("出現錯誤:" + ex.ToString()); } } public override object readPar(int i) ...{ try ...{ string temp = doc.Paragraphs[i].Range.Text.Trim(); return temp; } catch (Exception e) ...{ MessageBox.Show("Error:"+e.ToString()); return null; } } public override int getParCount() ...{ return doc.Paragraphs.Count; } public override void closeFile() ...{ try ...{ object unknow = Type.Missing; object saveChanges = Word.WdSaveOptions.wdPromptToSaveChanges; app.ActiveDocument.Close( ref saveChanges, ref unknow, ref unknow); } catch (Exception ex) ...{ MessageBox.Show("Error:" + ex.ToString()); } } public override void quit() ...{ try ...{ object unknow = Type.Missing; object saveChanges = Word.WdSaveOptions.wdSaveChanges; app.Quit(ref saveChanges, ref unknow, ref unknow); } catch (Exception) ...{ } } public void replaceChar() ...{ try ...{ object replaceAll = Word.WdReplace.wdReplaceAll; object missing = Type.Missing; app.Selection.Find.ClearFormatting(); app.Selection.Find.Text = "^l"; app.Selection.Find.Replacement.ClearFormatting(); app.Selection.Find.Replacement.Text = "^p"; app.Selection.Find.Execute( ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref replaceAll, ref missing, ref missing, ref missing, ref missing); } catch (Exception e) ...{ MessageBox.Show("文檔出現錯誤,請重新操作"); } }C#讀取word內容6:
剛才是用讀取一段做的例子,如果要讀取一句或一篇只需要把doc.Paragraphs[i](readPar中)改成doc.Sentences[i]或doc.content即可,因為都是微軟的東東,所以用起來沒有一點的障礙,再加上現在的vs2005做的很智能,所以先從java轉到了c#上
C#讀取word內容7:
實際上,C#讀取word內容是不用那么麻煩的,但是如果考慮到可能還要抽取txt,ppt等多種格式,所以就寫了一個抽象類,調用起來也方便,這就是為什么我的程序方法開頭會有override的原因,總要考慮到通用,所以多了一些代碼。
到此,相信大家對“C#讀取word內容操作的方法”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。