网上大量能搜索到的是:
打开xls用"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + excelFilePath + ";Extended Properties=\"Excel 8.0;HDR=YES;IMEX=1\"",
打开xlsx用"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelFilePath+ ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\""
下面是我当时遇到的情况,本人发在stackoverflow的,直接粘贴过来:
My xls file was created by a data export function from a website, the file extention is xls, it can be normally opened by MS Excel 2003. But both Microsoft.Jet.OLEDB.4.0 and Microsoft.ACE.OLEDB.12.0 got an "External table is not in the expected format" exception.
Finally, the problem is, just as the exception said, "it's not in the expected format". Though it's extention name is xls, but when I open it with a text editor, it is actually a well-formed html file, all data are in a <table>, each <tr> is a row and each <td> is a cell. Then I think I can parse it in a html way.