Résolution du code C # Pour lire le fichier Excel, le "format de formulaire externe ne correspond pas à" Erreur
Lors de la lecture du fichier Excel (xlsx) avec OledbDatAdapter, vous pouvez rencontrer une erreur de "format de formulaire externe". Cette erreur se produit généralement lorsque le fichier XLSX est situé dans une position de réseau partagée et ne s'ouvre pas à l'avance dans Microsoft Excel.
Question:
Lors de la lecture du fichier xlsx avec le code suivant, à moins que le fichier ne soit ouvert dans Excel, une erreur sera rencontrée:
Solution:
<code class="language-c#">string sql = "SELECT * FROM [Sheet1$]"; string excelConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + pathname + ";Extended Properties=\"Excel 8.0;HDR=YES;IMEX=1;\""; using (OleDbDataAdapter adaptor = new OleDbDataAdapter(sql, excelConnection)) { DataSet ds = new DataSet(); adaptor.Fill(ds); }</code>
La solution recommandée consiste à remplacer la chaîne de connexion à ce qui suit:
La chaîne de connexion mise à jour utilise Microsoft.ace.oledb.12.0 pour fournir un programme et définit les propriétés étendues pour Excel 12.0. Cette combinaison est compatible avec les formats de fichiers d'Excel 2007 et de versions supérieures, qui devraient être en mesure de résoudre l'erreur "format de format externe".
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!