将xlsx转换为xls问题

我试图将.xlsx文件转换为.xls ,它似乎工作正常,但是,当我打开.xls文件时,我收到一条警告消息“

您尝试打开“文件名”的文件格式与文件扩展名指定的格式不同。

在打开>文件之前,请validation文件是否已损坏,并从可信来源validation>。 你想现在打开文件吗?“

当我打开它时,一切看起来都很好,但我不明白为什么会发生这种情况。 我在这个程序中的下一步是将xls中的数据导入到SQL中,但是我担心这会导致问题。

这里是我调用SaveAs方法来更改文件的文件扩展名的代码行。

 wb.SaveAs("filename.xls", FileFormat: Microsoft.Office.Interop.Excel.XlFileFormat.xlOpenXMLWorkbook); 

我最初只是有

 wb.SaveAs("filename.xls"); 

当我得到错误后,我做了一些更多的挖掘,发现xlOpenXMLWorkbook ,但似乎没有帮助。

任何可以帮助我理解为什么会发生的信息将不胜感激。

要保存为电子表格(OpenXml格式, .xlsx ),请使用XlFileFormat.xlOpenXMLWorkbook

 wb.SaveAs("filename.xlsx", FileFormat: Microsoft.Office.Interop.Excel.XlFileFormat.xlOpenXMLWorkbook); 

要保存为Excel 1997-2003格式(Biff, .xls ),请使用XlFileFormat.xlExcel8

 wb.SaveAs("filename.xls", FileFormat: Microsoft.Office.Interop.Excel.XlFileFormat.xlExcel8); 

确保你设置了合适的扩展名 (.xlsx或.xls),否则你有错误。

另请参阅我的答案Excel Interop另存为在Excel 2007中提供兼容性检查器