日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
詳解C#讀取word內(nèi)容操作

C#讀取word內(nèi)容的操作是我們?cè)陂_發(fā)中經(jīng)常會(huì)遇到的問(wèn)題,那么如何C#讀取word內(nèi)容的操作呢?那么這里向你介紹了7個(gè)方面,希望對(duì)你有所幫助。

C#讀取word內(nèi)容1:

對(duì)項(xiàng)目添加引用,Microsoft Word 11.0 Object Library

C#讀取word內(nèi)容2:

在程序中添加

 
 
 
  1. using Word = Microsoft.Office.Interop.Word; 

C#讀取word內(nèi)容3:

程序中添加

 
 
 
  1. Word.Application app = 
  2. new Microsoft.Office.Interop.Word.Application(); //可以打開word程序
  3. Word.Document doc = null;  //一會(huì)要記錄word打開的文檔

word文檔和word程序可不是一回事奧!

C#讀取word內(nèi)容4:

一般來(lái)說(shuō),對(duì)于抽取word內(nèi)容,用的方法很少

 
 
 
  1. public override void openFile(object fileName){} //打開文檔
  2. public override object readPar(int i){} //讀取word文檔的第i段
  3. public override int getParCount(){} //返回word文檔一共幾段
  4. public override void closeFile(){}  //關(guān)閉文檔
  5. public override void quit(){}  //關(guān)閉word程序
  6. //從網(wǎng)頁(yè)上拷貝的目錄有時(shí)候會(huì)出現(xiàn)手動(dòng)換行符^l,,
  7. 先將其換成回車段落標(biāo)記,才能正確讀取
  8. public void replaceChar(){}

C#讀取word內(nèi)容5:代碼

 
 
 
  1. public override void openFile(object fileName)
  2.  ...{
  3. try
  4. ...{
  5.   if (app.Documents.Count > 0)
  6.   ...{
  7.  if (MessageBox.Show(
  8. "已經(jīng)打開了一個(gè)word文檔,
  9. 你想關(guān)閉重新打開該文檔嗎?", "提示",
  10.  MessageBoxButtons.YesNo) == DialogResult.Yes)
  11.  ...{
  12.    object unknow = Type.Missing;
  13.    doc = app.ActiveDocument;
  14.    if (MessageBox.Show(
  15. "你想保存嗎?", "保存",
  16.  MessageBoxButtons.YesNo) == DialogResult.Yes)
  17.    ...{
  18. app.ActiveDocument.Save();
  19.    }
  20.    app.ActiveDocument.Close(ref unknow, ref unknow, ref unknow);
  21.    app.Visible = false;
  22.  }
  23.  else
  24.  ...{
  25.    return;
  26.  }
  27.   }
  28. }
  29. catch (Exception)
  30. ...{
  31.   //MessageBox.Show("您可能關(guān)閉了文檔");
  32.   app = new Microsoft.Office.Interop.Word.Application();
  33. }
  34. try
  35. ...{
  36.   object unknow = Type.Missing;
  37.   app.Visible = true;
  38.   doc = app.Documents.Open(ref fileName,
  39.  ref unknow, ref unknow, ref unknow, ref unknow, ref unknow,
  40.  ref unknow, ref unknow, ref unknow, ref unknow, ref unknow,
  41.  ref unknow, ref unknow, ref unknow, ref unknow, ref unknow);
  42.  }
  43.  catch (Exception ex)
  44.  ...{
  45.    MessageBox.Show("出現(xiàn)錯(cuò)誤:" + ex.ToString());
  46.  }   
  47.     
  48.  }
  49. public override object readPar(int i)
  50.  ...{
  51. try
  52. ...{
  53.   string temp = doc.Paragraphs[i].Range.Text.Trim();
  54.   return temp;
  55. }
  56. catch (Exception e) ...{
  57.   MessageBox.Show("Error:"+e.ToString());
  58.   return null;
  59. }
  60.  }
  61. public override int getParCount()
  62.  ...{
  63. return doc.Paragraphs.Count;
  64.  }
  65. public override void closeFile()
  66.  ...{
  67. try
  68. ...{
  69.   object unknow = Type.Missing;
  70.   object saveChanges = Word.WdSaveOptions.wdPromptToSaveChanges;
  71.   app.ActiveDocument.Close(
  72. ref saveChanges, ref unknow, ref unknow);
  73. }
  74. catch (Exception ex)
  75. ...{
  76.   MessageBox.Show("Error:" + ex.ToString());
  77. }
  78.  }
  79. public override void quit()
  80.  ...{
  81. try
  82. ...{
  83.   object unknow = Type.Missing;
  84.   object saveChanges = Word.WdSaveOptions.wdSaveChanges;
  85.   app.Quit(ref saveChanges, ref unknow, ref unknow);
  86. }
  87. catch (Exception)
  88. ...{
  89. }
  90.  }
  91. public void replaceChar() ...{
  92. try
  93. ...{
  94.   object replaceAll = Word.WdReplace.wdReplaceAll;
  95.   object missing = Type.Missing;
  96.   app.Selection.Find.ClearFormatting();
  97.   app.Selection.Find.Text = "^l";
  98.   app.Selection.Find.Replacement.ClearFormatting();
  99.   app.Selection.Find.Replacement.Text = "^p";
  100.   app.Selection.Find.Execute(
  101.  ref missing, ref missing, 
  102. ref missing, ref missing, ref missing,
  103.  ref missing, ref missing, 
  104. ref missing, ref missing, ref missing,
  105.  ref replaceAll, ref missing, 
  106. ref missing, ref missing, ref missing);
  107. }
  108. catch (Exception e)
  109. ...{
  110.   MessageBox.Show("文檔出現(xiàn)錯(cuò)誤,請(qǐng)重新操作");
  111. }
  112. }

C#讀取word內(nèi)容6:

剛才是用讀取一段做的例子,如果要讀取一句或一篇只需要把doc.Paragraphs[i](readPar中)改成doc.Sentences[i]或doc.content即可,因?yàn)槎际俏④浀臇|東,所以用起來(lái)沒有一點(diǎn)的障礙,再加上現(xiàn)在的vs2005做的很智能,所以先從java轉(zhuǎn)到了c#上

C#讀取word內(nèi)容7:

實(shí)際上,C#讀取word內(nèi)容是不用那么麻煩的,但是如果考慮到可能還要抽取txt,ppt等多種格式,所以就寫了一個(gè)抽象類,調(diào)用起來(lái)也方便,這就是為什么我的程序方法開頭會(huì)有override的原因,總要考慮到通用,所以多了一些代碼。

C#讀取word內(nèi)容的基本內(nèi)容就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)操作C#讀取word內(nèi)容有所幫助。


新聞名稱:詳解C#讀取word內(nèi)容操作
網(wǎng)頁(yè)鏈接:http://m.5511xx.com/article/codoidp.html