使用Microsoft Compatibility Pack将大量文件从xls转换为xlsx

我正在寻找一种方法来将xls文件中的大量文件以编程方式转换为xlsx文件,而且我实际上find了一种不需要付费使用库(Microsoft Compatibility Pack)的方法。

Process.Start(@"c:\Program Files (x86)\Microsoft Office\Office12\excelcnv.exe", string.Format(@" -nme -oice {0} {1}", filename, destinationFilename)) 

不过,我在转换大量文件时遇到了一个问题,基本上我正在遍历一系列文件path并运行此代码,最后我最终为每个要转换的文件创build了一个进程,几乎杀死了我的机器。 我可以以某种方式使用一个进程的一些文件?

您可以按顺序处理文件。 为每个文件启动一个新的进程,但等到处理完成后再开始下一个文件的新进程。

 var convertProcess = Process.Start(@"c:\Program Files (x86)\Microsoft Office\Office12\excelcnv.exe", string.Format(@" -nme -oice {0} {1}", filename, destinationFilename)); convertProcess.WaitForExit();