Maison > développement back-end > C++ > Pourquoi mon code C# obtient-il une erreur « Tableau externe non au format attendu » lors de la lecture de fichiers Excel et comment puis-je y remédier ?

Pourquoi mon code C# obtient-il une erreur « Tableau externe non au format attendu » lors de la lecture de fichiers Excel et comment puis-je y remédier ?

Linda Hamilton
Libérer: 2025-01-26 17:31:39
original
624 Les gens l'ont consulté

Why Does My C# Code Get an

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>
Copier après la connexion
Afin de résoudre cette erreur et de lire le fichier Excel sans avoir à ouvrir le fichier à l'avance, vous devez mettre à jour la chaîne de connexion. Le message d'erreur montre que "le format externe ne correspond pas" car la chaîne de connexion utilise un ancien format qui n'est pas compatible avec le format de fichier Excel 2007.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal