C# 处理MS word文件中文本的最简单方法

C# 处理MS word文件中文本的最简单方法,c#,ms-word,C#,Ms Word,我需要从C#中的旧MS word.doc文件中提取文本。 完成这项工作最简单(或最好)的方法是什么?首先,您需要添加MS Word对象库。转到Project=>Add Reference,选择COM选项卡,然后查找并选择“Microsoft Word 10.0对象库”。您计算机上的版本号可能不同。单击“确定” 完成后,可以使用以下代码。它将打开MS Word文档,并在消息框中显示每个段落- // Read an MS Word Doc private void ReadWordDoc() {

我需要从C#中的旧MS word.doc文件中提取文本。
完成这项工作最简单(或最好)的方法是什么?

首先,您需要添加MS Word对象库。转到Project=>Add Reference,选择COM选项卡,然后查找并选择“Microsoft Word 10.0对象库”。您计算机上的版本号可能不同。单击“确定”

完成后,可以使用以下代码。它将打开MS Word文档,并在消息框中显示每个段落-

// Read an MS Word Doc
private void ReadWordDoc()
{
    try
    {
        Word.ApplicationClass wordApp = new Word.ApplicationClass();

        // Define file path
        string fn = @"c:\test.doc";

        // Create objects for passing
        object oFile = fn;
        object oNull = System.Reflection.Missing.Value;
        object oReadOnly = true;

        // Open Document
        Word.Document Doc = wordApp.Documents.Open(ref oFile, ref oNull, 
                ref oReadOnly, ref oNull, ref oNull, ref oNull, ref oNull, 
                ref oNull, ref oNull, ref oNull, ref oNull, ref oNull, 
                ref oNull, ref oNull, ref oNull);

        // Read each paragraph and show         
        foreach (Word.Paragraph oPara in Doc.Paragraphs)                
            MessageBox.Show(oPara.Range.Text);

        // Quit Word
        wordApp.Quit(ref oNull, ref oNull, ref oNull);

    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }

}

根据您的需要和预算,您可能希望查看图书馆。这并不便宜,但可能会减少提取文本所需的工作量。额外的好处是,您不需要在部署计算机上安装MSOffice(如果您在服务器上运行它,这是必需的)。

这是在桌面(WinForms或WPF)还是web应用程序(ASP.NET)中?这有很大的不同。