`
ld_hust
  • 浏览: 171594 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

.net读取word文件文本

    博客分类:
  • .Net
阅读更多

最近在写一个使用lucene.net为基础架构的全文检索引擎,要求能处理OFFICE和PDF文件,说实话,头疼。

一直在网上找关于这几种文件读取的开源工具和COM组件。很辛苦,但是总算有点收获

今天大功告成了(未知异常现在我也拿不准),和大家一起分享!

 

先上读.doc的啊!

首先要添加COM引用:

morcosoft word 12.0 object Library和

morcosoft office12.0 object Library   其中12.0表示版本,如果版本低点也可以的。

然后

using Microsoft.Office.Core;

代码如下:

    public string WordReader(string filename)
    {
        filename = DocPath+filename;
        Word.ApplicationClass wordapp = null;
        Word.Document worddoc = null;
        object fileobj = filename;
        object nullobj = System.Reflection.Missing.Value;
        object Readonly = true;
        object noSaveChange = false;
        string doc = "";
        try
        {
            wordapp = new Word.ApplicationClass();
            worddoc = wordapp.Documents.Open(ref fileobj, ref nullobj, ref Readonly, 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 = worddoc.Content.Text;
            doc.Replace("\a", ""); //替换空串为空。(word中\a代表空串,但在C#中,代表响铃 晕~~)否则显示控制台程序时会响
            doc.Replace("\r", "\n"); //替换回车为回车换行
        }
        catch(Exception ex)
        {
            throw ex;
        }
        finally
        {
            if (worddoc != null)
            {
                try
                {
                    worddoc.Close(ref nullobj, ref nullobj, ref nullobj);
                }
                catch
                { }
              
            }
            if (wordapp != null)
            {
                try
                {
                    wordapp.Quit(ref noSaveChange, ref nullobj, ref nullobj);
                }
                catch
                {
                }
               
            }
            
            System.Runtime.InteropServices.Marshal.ReleaseComObject(wordapp);
            System.Runtime.InteropServices.Marshal.ReleaseComObject(worddoc);
            worddoc = null;
            wordapp = null;

            GC.Collect();
            GC.WaitForPendingFinalizers();
        }
        return doc;
   
    }

分享到:
评论

相关推荐

    .net 读取word的几种方法

    在.NET框架中,C#程序员可以使用多种方法来读取Microsoft Word文档。下面将详细介绍其中的几种常见技术,包括使用Microsoft Office Interop、Open XML SDK、Apache POI(仅限于.NET Core)以及第三方库如NPOI和Spire...

    .net读取文本文件内容dll,Apose.dll

    1. **读取Word文档内容**:Apose.Words模块允许开发者读取.doc、.docx格式的Word文档,提取文本、样式、图像、表格等信息。它还支持复杂的格式转换,比如将Word文档转换为PDF、HTML或其他格式。 2. **处理Excel电子...

    asp.net 利用word模板导出word文件

    在ASP.NET中,我们经常需要处理各种文件操作,包括生成和导出Word文档。在给定的场景中,"asp.net 利用word模板导出word文件"涉及到的关键技术是OpenXML。 OpenXML是一种标准的文件格式,由Microsoft开发,用于存储...

    直接读取word到richTextBox

    "直接读取word到richTextBox"是一个常见的需求,它涉及到将Word文档的内容,包括格式和图片,实时地显示在richtextbox控件中。richtextbox是Windows Presentation Foundation(WPF)或Windows Forms中的一个组件,它...

    asp.net练习word文档

    7. **性能优化**:由于直接操作Word文件可能较慢,可以考虑将数据存储在数据库中,仅在需要时生成或读取Word文档,以提高系统性能。 在实际开发中,你可能还需要处理复杂的格式、图片插入、页眉页脚等问题。对于更...

    asp.net修改word文字并另存为新的word及pdf

    在ASP.NET环境中,我们经常需要处理与Word文档相关的任务,比如读取、修改以及转换文档。这个场景下,我们关注的是如何使用C#代码来实现对Word文档的文字修改,并将修改后的文档保存为新的Word格式,同时也能转换为...

    asp.net(c#).winform 读取word文档内容、创建新word文档

    一、读取Word文档内容 在C#中,可以借助Microsoft.Office.Interop.Word库来实现与Word的交互。这个库是.NET框架的一部分,允许开发者直接操作Word对象模型。以下是一个简单的步骤: 1. 引用库:首先,需要在项目中...

    读取Word文档,Unity使用,自测有效

    虽然在读取Word文档中可能不直接用到,但如果你需要在Unity中处理压缩文件,它是一个很好的工具。 最后,`Excel.dll`和`LitJson.dll`可能分别用于Excel操作和JSON序列化,但在这里未直接提及,所以它们在读取Word...

    npoi读取word

    在本文中,我们将深入探讨如何使用NPOI读取Word文档内容,为你的编程实践提供详尽的指导。 1. **NPOI简介** NPOI是.NET平台上对Apache POI的封装,后者是Java平台上的一个库,用于处理微软的Office文档。NPOI支持...

    Xceed.Words.NET(操作word).rar

    Xceed.Words.NET库为C#开发者提供了一个强大的解决方案,允许在不需将文件下载到本地的情况下,直接从数据库中读取和预览Word文档。 Xceed.Words.NET是一个高性能的.NET组件,专为处理Word文档(.docx格式)设计。...

    NETCORE读取word模板修改内容并生成pdf下载.zip

    标题 "NETCORE读取word模板修改内容并生成pdf下载.zip" 涉及的技术核心是使用.NET Core(一种跨平台的开发框架)和Aspose.Words库来处理Microsoft Word文档,并将其转换为PDF格式,同时在WebAPI环境中提供下载功能。...

    .net导出word,word表格打印,设置word单元格两种颜色,.net导出报表word版,.net word操作

    在.NET框架中,开发人员经常需要处理Word...总的来说,.NET提供了丰富的API来处理Word文档,无论是简单的文本操作还是复杂的表格设计,都可以灵活应对。在实际项目中,理解这些基本操作是实现高效Word文档处理的关键。

    VB.NET中实现文本的复制粘贴(调用剪贴板)

    在VB.NET编程环境中,我们经常需要处理用户与应用程序之间的数据交换,这通常涉及到文本的复制和粘贴功能。为了实现这一功能,我们可以利用系统提供的剪贴板服务。本篇文章将深入探讨如何在VB.NET中利用剪贴板API来...

    aspose.word 解析word读取及word转pdf、转html

    Aspose.Word提供了详细的API,可以方便地读取Word文档的各个方面。例如,你可以通过以下步骤来读取一个Word文档: 1. 创建`Document`对象:首先,你需要创建一个`Document`实例,传入Word文档的路径作为参数。 2. ...

    c#用aspose.word读取word文件内容,并显示图片

    在探讨如何利用C#结合Aspose.Word库读取Word文档内容并显示其中的图片之前,我们首先需要了解几个关键的概念和技术点。 ### Aspose.Word 库简介 Aspose.Words 是一个强大的.NET类库,用于在服务器端处理Microsoft ...

    asp.net WORD文档显示到页面

    这些库提供了API,可以读取Word文档并将其转换为HTML。例如,使用Spire.Doc,你可以通过以下步骤实现转换: ```csharp using Spire.Doc; ... Document doc = new Document("path_to_word_file.docx"); string ...

    asp.net上传WORD转换HTM,同时读出内容及图片

    本篇文章将详细探讨如何在ASP.NET环境下实现这个功能,以及如何读取Word文档的内容,包括其中的文本和图片。 首先,我们需要理解Word文档的存储结构。对于2007及以后版本的Word文档(.docx格式),它们实际上是ZIP...

    .net 导入word生成HTML源代码

    使用这个组件,开发者可以直接操作Word对象模型,读取Word文档并将其转换为HTML。 具体步骤大致如下: 1. **创建Word应用程序对象**:在C#或VB.NET代码中,首先需要创建一个Word.Application对象实例,这相当于...

Global site tag (gtag.js) - Google Analytics