我正在尝试获取 Word 或 Excel 文件的文本。但是,我只能访问此 Word 文件的二进制数组,但无法获取该文件的路径,因此是否可以转换 Word 文件的二进制数组串?我试过这段代码,但它无法帮助我,因为我无法获得文件的路径
StringBuilder text = new StringBuilder();
Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();
object miss = System.Reflection.Missing.Value;
object path = filePath;
object readOnly = true;
Microsoft.Office.Interop.Word.Document docs = word.Documents.Open(ref path, ref miss, ref readOnly, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss);
for (int i = 0; i < docs.Paragraphs.Count; i++)
{
text.Append(" \r\n " + docs.Paragraphs[i + 1].Range.Text.ToString());
}
return text.ToString();
你不能直接使用字节数组,但你可以找到一些可以打开和操作 Word 文档的库。通常,这些库可以从流中打开 Word 文档。
我对 Syncfusion 及其 DocIO 库有一些经验,它们可以做到这一点。它具有免费的社区许可证,因此可用于测试或小型团队。
你可以像这样使用它:
WordDocument doc = new WordDocument();
byte[] wordBytes = …
using (var ms = new MemoryStream(wordBytes))
{
doc.Open(ms, FormatType.Automatic);
}
拥有 Word 文档后,您可以从中提取文本。
免责声明:我与 Syncfusion 公司或其任何员工没有任何关系。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句