使用Microsoft兼容包

时间:2015-11-29 10:47:37

标签: c# excel

我一直在寻找一种方法,以编程方式将大量文件从xls转换为xlsx,我实际上找到了一种不需要付费使用库的方法 - Microsoft兼容包。

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

但是,我在转换大量文件时遇到了一个问题,基本上我正在迭代文件路径列表并运行此代码,最终我最终为我想要转换的每个文件创建了一个进程,几乎杀死了我的机器。我可以以某种方式对一些文件使用一个进程吗?

1 个答案:

答案 0 :(得分:1)

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

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