C# 处理MS word文件中文本的最简单方法
我需要从C#中的旧MS word.doc文件中提取文本。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() {
完成这项工作最简单(或最好)的方法是什么?首先,您需要添加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)中?这有很大的不同。