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内容的基本内容就向你介绍到这里,希望对你了解和学习操作C#读取word内容有所帮助。
                当前文章:详解C#读取word内容操作
                
                网页网址:http://www.csdahua.cn/qtweb/news35/389935.html
            
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网