1

我正在尝试在 VB.NET 下打开一个 doc 文件,我发现了一种非常简单的方法来使用 word 来完成它:

例如:

    Dim doc As Word.Document
    Dim wordApp As New Word.Application

    Dim allText As String
    Try
        doc = wordApp.Documents.Open("C:\marti.doc")
        allText = doc.Range.Text()
        doc.Close()
        RichTextBox1.Text = allText
    Catch
        'error            
    End Try

(更详细的信息: http: //support.microsoft.com/kb/316383

这可以工作,但它需要打开 Microsoft Word 窗口来处理它。我需要在没有安装 Word 的情况下使用它。所以我需要一个可以打开 doc/excel 文件的库。

你知道可以做到这一点的好图书馆吗?

我找到了这个库: http ://bytescout.com/download/trial/documentsdk.html

你试过这个吗?

4

2 回答 2

2

与 Office 文件交互的推荐方式是通过 Office OpenXML 库。你可以在这里得到它。

如果您使用的是 Microsoft Office 2003,并且安装了适用于 Word、Excel 和 PowerPoint 2007 文件格式的 Microsoft Office 兼容包,则可以在 Open XML 中加载和保存文档。您可以下载兼容包并在此处找到更多信息。

这是收集文档内容的示例方法:

Private Shared Function GetWordDocContent(strDoc As String) As String
    Dim stream As Stream = File.Open(strDoc, FileMode.Open)
    Dim wordprocessingDocument__1 As WordprocessingDocument = WordprocessingDocument.Open(stream, True)
    Dim body As Body = wordprocessingDocument__1.MainDocumentPart.Document.Body
    Dim content As String = body.InnerText
    wordprocessingDocument__1.Close()
    Return content    
End Function

另一个例子在这里

于 2015-11-19T10:34:55.633 回答
1

对于处理 docx 文件,您可以尝试NPOIDocX

对于旧的单词格式(.doc),我尝试过Syncfusion DocIO组件,但我更喜欢在NetOffice中使用单词自动化,比互操作好得多

于 2015-11-19T13:26:28.763 回答