我想从Word文件(doc / docx)中提取所有单词并将它们放入列表中。似乎microsoft.Office.Interop只是在我想提取段落并将它们添加到列表中时起作用。
B
我还找到了逐字提取的方法,但由于产生异常的循环,它不适用于大文档。
List<string> data = new List<string>();
Microsoft.Office.Interop.Word.Application app = new
Microsoft.Office.Interop.Word.Application();
Document doc = app.Documents.Open(dlg.FileName);
foreach (Paragraph objParagraph in doc.Paragraphs)
data.Add(objParagraph.Range.Text.Trim());
((_Document)doc).Close();
((_Application)app).Quit();`
所以我的问题是,如果有办法从大字文件中提取单词。我认为Microsoft.Office.Interop不是从大文件中提取的好工具。 对不起,我的英语不好。
答案 0 :(得分:1)
段落中的对象称为Run
,但我不知道这是否在Interop中可用。为了提高您的体验,我建议您切换到使用OpenXmlSdk
,以防您需要处理大量文档。
如果你想坚持使用Interop,为什么不将每个段落分成一个数组(明确的分隔符空格)并在之后添加所有单词?