C# Lire les données dans Excel
#region 读取Excel中的数据 /// <summary> /// 读取Excel中的数据 /// </summary> /// <param name="excelFile">Excel文件名及路径,EG:C:\Users\JK\Desktop\导入测试.xls</param> /// <returns>Excel中的数据</returns> private DataTable GetTable(string fileName) { OleDbConnection objConn = null; System.Data.DataTable dt = null; string connString = string.Empty; OleDbDataAdapter da = new OleDbDataAdapter(); //获取Excel工作薄中Sheet页(工作表)名集合 String[] ss = this.GetExcelSheetNames(fileName); DataTable dataTable = new DataTable(); try { string FileType = fileName.Substring(fileName.LastIndexOf(".")); if (FileType == ".xls") connString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + fileName + ";Extended Properties=Excel 8.0;"; else//.xlsx connString = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + fileName + ";" + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\""; // 创建连接对象 objConn = new OleDbConnection(connString); // 打开数据库连接 objConn.Open(); string sql_F = "Select * FROM [{0}]"; for (int i = 0; i < ss.Length;i++ ) { da.SelectCommand = new OleDbCommand(String.Format(sql_F, ss[i].ToString() + "$"), objConn); da.Fill(dataTable); MessageBox.Show("第"+i+"次表中数据量="+dataTable.Rows.Count.ToString()); } dataTable = DeleteBlank(dataTable,9); MessageBox.Show("删除空行后,表中数据量=" + dataTable.Rows.Count.ToString()); return dataTable; } catch (Exception ex) { MessageBox.Show(ex.ToString()); return null; } finally { // 清理 if (objConn != null) { objConn.Close(); objConn.Dispose(); } if (dt != null) { dt.Dispose(); } } } #endregion
#region 删除指定表中的空白行 /// <summary> ///删除指定表中的空白行 /// </summary> /// <param name="dt">表名</param> /// <param name="ColNum">Excel中的列数</param> /// <returns>删除空白行后的DataTable</returns> private DataTable DeleteBlank(DataTable dt,int ColNum) { if (dt == null || dt.Rows.Count==0) { return dt; } //删除其中的空行(注意for循环的形式) for (int i = dt.Rows.Count - 1; i >= 0; i--) { DataRow row = dt.Rows[i]; bool flag = true; //当某行的ColNum列,均为空时,改行为空 for (int j = 0; j < ColNum; j++) { object o = row[j]; if (o != DBNull.Value && Convert.ToString(o).Trim().Length > 0) { flag = false; break; } } if (flag) { dt.Rows[i].Delete(); } } dt.AcceptChanges(); //把行中DBNull列替换成空字符串 for (int k = dt.Rows.Count - 1; k >= 0; k--) { DataRow row = dt.Rows[k]; for (int z = 0; z < ColNum; z++) { object o = row[z]; if (o == DBNull.Value) { if (dt.Columns[z].DataType == typeof(string)) { row[z] = ""; } } } } dt.AcceptChanges(); return dt; } #endregion
Petite remarque :
Lors de la lecture d'Excel, traiter automatiquement les en-têtes.
Ce qui précède est le contenu des données de lecture C# dans Excel. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !

C # et .NET Runtime travaillent en étroite collaboration pour permettre aux développeurs de pouvoir de développer des capacités de développement efficaces, puissantes et multiplateformes. 1) C # est un langage de programmation de type et orienté objet conçu pour intégrer de manière transparente avec le framework .NET. 2) Le .NET Runtime gère l'exécution du code C #, fournit une collecte de déchets, des services de sécurité et d'autres services et assure une opération efficace et multiplateforme.

Pour démarrer le développement C # .NET, vous devez: 1. Comprendre la connaissance de base de C # et les concepts principaux du .NET Framework; 2. Maître les concepts de base des variables, des types de données, des structures de contrôle, des fonctions et des classes; 3. Apprenez les fonctionnalités avancées de C #, telles que LINQ et la programmation asynchrone; 4. Soyez familier avec les techniques de débogage et les méthodes d'optimisation des performances pour les erreurs courantes. Avec ces étapes, vous pouvez progressivement pénétrer le monde de C # .NET et écrire des applications efficaces.

La relation entre C # et .NET est inséparable, mais ce ne sont pas la même chose. C # est un langage de programmation, tandis que .NET est une plate-forme de développement. C # est utilisé pour écrire du code, compiler dans le langage intermédiaire de .NET (IL) et exécuté par .NET Runtime (CLR).

C # .NET est toujours important car il fournit des outils et des bibliothèques puissants qui prennent en charge le développement d'applications multiples. 1) C # combine .NET Framework pour rendre le développement efficace et pratique. 2) Le mécanisme de collecte de la sécurité et des ordures de C # améliore ses avantages. 3) .NET fournit un environnement de course multiplateforme et des API riches, améliorant la flexibilité du développement.

C # .NETtisversatileforbothwebandDeskTopDevelopment.1) forweb, useasp.netfordynamicapplications.2) fordesktop, employwindowsformSorwpfforrichInterfaces.3) usexamarinforcross-plateformDevelopment, permanant les codéescosswindows, macos, linux, etmobiledevices.

C # et .NET s'adaptent aux besoins des technologies émergentes à travers des mises à jour et des optimisations continues. 1) C # 9.0 et .NET5 introduire le type d'enregistrement et l'optimisation des performances. 2) .netcore améliore le support natif et conteneurisé cloud. 3) ASP.Netcore s'intègre aux technologies Web modernes. 4) ML.NET prend en charge l'apprentissage automatique et l'intelligence artificielle. 5) La programmation asynchrone et les meilleures pratiques améliorent les performances.

C # .NeTissuitableFormenterprise-LevelApplications withithemicrosofosystématetoitsstrongThpyping, RichLibrary, androbustperformance.wowever, itmayNotBeidealForcross-PlatformDevelopmentorwhenRawpeediscritical, whileLanguageSlikerUstorGomightBeferable.

Le processus de programmation de C # dans .NET comprend les étapes suivantes: 1) l'écriture de code C #, 2) la compilation dans un langage intermédiaire (IL) et 3) l'exécution par .NET Runtime (CLR). Les avantages de C # dans .NET sont sa syntaxe moderne, son système de type puissant et son intégration serrée avec le Framework .NET, adapté à divers scénarios de développement des applications de bureau aux services Web.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

Listes Sec
SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

PhpStorm version Mac
Le dernier (2018.2.1) outil de développement intégré PHP professionnel

Télécharger la version Mac de l'éditeur Atom
L'éditeur open source le plus populaire

ZendStudio 13.5.1 Mac
Puissant environnement de développement intégré PHP