最近有个需求就是读取一堆word文档的内容,查找里面的内容并记录。
网上搜了一下NPOI可以读取docx文件,但是word文档中有大部分是doc文档,于是使用wps api对doc文档进行转换。
前期准备
- 需要先在机子上安装wps。
- 然后引用 Upgrade Kingsoft WPS 3.0 Object Library。
转换代码
var type = Type.GetTypeFromProgID("KWps.Application");
dynamic wps = Activator.CreateInstance(type);
try
{
dynamic doc = wps.Documents.Open(srcPath, Visible: false);
doc.SaveAs(destPath, WdSaveFormat.wdFormatXMLDocument);
doc.close();
Console.WriteLine(destPath);
}
catch (Exception ex)
{
Console.WriteLine($"转换docx出错:{ex.StackTrace}");
}
finally
{
wps.Quit();
}
C#