我正在尝试读取文件夹中的大约50K文件,从每个文件中提取一些细节并写入excel文件。我使用以下代码: -
string savLoc = textBox2.Text.Trim();
savLoc = savLoc + "\\Visible_Fields.xlsx";
xlWorkBook.SaveAs(savLoc, Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlNoChange, misValue, misValue, misValue, misValue, misValue);
xlApp.DisplayAlerts = true;
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
但是创建的xlsx文件没有打开并显示其已损坏。但是,如果我使用扩展名作为xls,它将起作用,但xls在一个工作表中具有65K的限制。谁能告诉我这是怎么做到的?我只能使用excel互操作而不是任何其他免费库。
我使用interop版本14
答案 0 :(得分:3)
解决此问题的最佳方法是不使用Interop。它基于COM +管道,并不是那么可靠。相反,我建议您使用能够打开文件,解析它并以.NET本机方式为您提供内容的第三方库,这样更安全。
有大量项目要避免使用Interop。通常更喜欢的是EPPlus。