


Explication détaillée de la façon de créer des fichiers Access et des fichiers Excel à l'aide de la programmation C#.net
L'exemple de cet article décrit comment créer des fichiers Access et Excel à l'aide de la programmation C#.net. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Certains systèmes peuvent avoir besoin d'exporter des données aux formats de fichier Access ou Excel pour faciliter le transfert de données, l'impression, etc.
Les deux fichiers à exporter, les fichiers Excel ou Access, peuvent ne pas exister à l'avance. Cela nous oblige à les programmer et à les générer nous-mêmes. Voici quelques méthodes pour générer ces deux fichiers, et seulement la plupart. ceux couramment utilisés sont répertoriés. Pas tout.
1. Générez d’abord le fichier Excel.
Option 1. Si vous utilisez Excel pour enregistrer uniquement des données bidimensionnelles, utilisez-le comme base de données.
Le plus simple, vous n'avez pas besoin de référencer de composants supplémentaires, il vous suffit d'utiliser OLEDB pour créer le fichier Excel. L’exemple de code est le suivant.
using System.Data.OleDb; public static void CreateExcelFile2() { string OLEDBConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://aa2.xls;"; OLEDBConnStr += " Extended Properties=Excel 8.0;"; string strCreateTableSQL = @" CREATE TABLE "; strCreateTableSQL += @" 测试表 "; strCreateTableSQL += @" ( "; strCreateTableSQL += @" ID INTEGER, "; strCreateTableSQL += @" UserID INTEGER, "; strCreateTableSQL += @" UserIP VARCHAR , "; strCreateTableSQL += @" PostTime DATETIME , "; strCreateTableSQL += @" FromParm VARCHAR "; strCreateTableSQL += @" ) "; OleDbConnection oConn = new OleDbConnection(); oConn.ConnectionString = OLEDBConnStr; OleDbCommand oCreateComm = new OleDbCommand(); oCreateComm.Connection = oConn; oCreateComm.CommandText = strCreateTableSQL; oConn.Open(); oCreateComm.ExecuteNonQuery(); oConn.Close(); } using System.Data.OleDb; public static void CreateExcelFile2() { string OLEDBConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://aa2.xls;"; OLEDBConnStr += " Extended Properties=Excel 8.0;"; string strCreateTableSQL = @" CREATE TABLE "; strCreateTableSQL += @" 测试表 "; strCreateTableSQL += @" ( "; strCreateTableSQL += @" ID INTEGER, "; strCreateTableSQL += @" UserID INTEGER, "; strCreateTableSQL += @" UserIP VARCHAR , "; strCreateTableSQL += @" PostTime DATETIME , "; strCreateTableSQL += @" FromParm VARCHAR "; strCreateTableSQL += @" ) "; OleDbConnection oConn = new OleDbConnection(); oConn.ConnectionString = OLEDBConnStr; OleDbCommand oCreateComm = new OleDbCommand(); oCreateComm.Connection = oConn; oCreateComm.CommandText = strCreateTableSQL; oConn.Open(); oCreateComm.ExecuteNonQuery(); oConn.Close(); }
Lorsque vous créez un tableau, si le système constate que le fichier Excel n'existe pas, il créera automatiquement le fichier Excel. Les personnes qui n’ont jamais été en contact avec cela ne le savent peut-être pas.
Quant aux opérations d'ajout et de modification, elles ne diffèrent pas des bases de données ordinaires et ne seront pas décrites.
Option 2 : Générez directement un fichier texte brut qui utilise des espaceurs pour séparer chaque élément de données, mais le suffixe du fichier est XLS.
Remarque : A ce moment, si vous ouvrez un tel fichier directement avec Excel, pas de problème, tout est normal, mais si vous utilisez ADO.net pour lire ce fichier, votre moteur de liens ne devrait pas être Excel. un fichier texte (Microsoft Text Driver). C'est-à-dire que la chaîne de connexion ne doit pas être
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://aa2.xls;Extended Properties=Excel 8.0;"
mais doit être de la manière suivante :
chaîne de connexion façon OLEDB :
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C://11.txt;Extended Properties='text;HDR=No;FMT=TabDelimited'
voie ODBC lecture de la méthode d'écriture de chaîne TXT :
Driver={Microsoft Text Driver (*.txt; *.csv)}; Dbq=C://11.txt; Extensions=asc,csv,tab,txt;
Option 3. Le fichier Excel que vous souhaitez créer possède certaines fonctionnalités propres à Excel qui doivent être créées, vous devez donc utiliser Com, c'est-à-dire : Bibliothèque d'objets Microsoft Excel
Veuillez ajouter une référence à la bibliothèque d'objets Microsoft Excel 11.0. La version de cette bibliothèque de composants est différente selon la version d'Office que vous avez installée.
Exemple de code :
public static void CreateExcelFile() { string FileName = "c://aa.xls"; Missing miss = Missing.Value; Excel.Application m_objExcel = new Excel.Application(); m_objExcel.Visible = false; Excel.Workbooks m_objBooks = (Excel.Workbooks)m_objExcel.Workbooks; Excel.Workbook m_objBook = (Excel.Workbook)(m_objBooks.Add(miss)); m_objBook.SaveAs(FileName, miss, miss, miss, miss, miss, Excel.XlSaveAsAccessMode.xlNoChange, miss, miss,miss, miss, miss); m_objBook.Close(false, miss, miss); m_objExcel.Quit(); }
J'ai simplement créé un fichier Excel ici, et il n'y a plus de manipulation d'Excel. Si vous souhaitez en savoir plus, vous pouvez vous référer aux articles concernés sur. ce site.
2. Générer une base de données Access
Access est une base de données après tout, donc la première méthode mentionnée ci-dessus dans Excel ne peut pas être appliquée.
Vous pouvez utiliser ADOX pour créer des fichiers de base de données Access.
La différence entre ADOX et OleDB : ADOX est l'API de données, qui n'est qu'une interface. OLEDB est le fournisseur de données, et l'API appelle le fournisseur de données.
Exemple de code :
Avant utilisation, veuillez ajouter une référence à Microsoft ADO Ext 2.x pour DDL et sécurité. Selon votre système d'exploitation, la version ici peut être différente.
using ADOX; using System.IO; public static void CreateAccessFile(string FileName) { if(!File.Exists(FileName)) { ADOX.CatalogClass cat = new ADOX.CatalogClass(); cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileName +";"); cat = null; } }
Le code ci-dessus génère uniquement la base de données Access. Avec ADOX, vous pouvez également exploiter la base de données, ajouter des tables, etc.
using System; using ADOX; namespace WebPortal { /// <summary> /// CreateAccessDB 的摘要说明。 /// 对于不同版本的ADO,需要添加不同的引用 /// 请添加引用Microsoft ADO Ext. 2.7 for DDL and Security /// 请添加引用Microsoft ADO Ext. 2.8 for DDL and Security /// </summary> public class CreateAccessDB : System.Web.UI.Page { private void Page_Load(object sender, System.EventArgs e) { //为了方便测试,数据库名字采用比较随机的名字,以防止添加不成功时还需要重新启动IIS来删除数据库。 string dbName = "D://NewMDB"+DateTime.Now.Millisecond.ToString()+".mdb"; ADOX.CatalogClass cat = new ADOX.CatalogClass(); cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dbName +";"); Response.Write("数据库:" + dbName + "已经创建成功!"); ADOX.TableClass tbl = new ADOX.TableClass(); tbl.ParentCatalog = cat; tbl.Name="MyTable"; //增加一个自动增长的字段 ADOX.ColumnClass col = new ADOX.ColumnClass(); col.ParentCatalog = cat; col.Type=ADOX.DataTypeEnum.adInteger; // 必须先设置字段类型 col.Name = "id"; col.Properties["Jet OLEDB:Allow Zero Length"].Value= false; col.Properties["AutoIncrement"].Value= true; tbl.Columns.Append (col,ADOX.DataTypeEnum.adInteger,0); //增加一个文本字段 ADOX.ColumnClass col2 = new ADOX.ColumnClass(); col2.ParentCatalog = cat; col2.Name = "Description"; col2.Properties["Jet OLEDB:Allow Zero Length"].Value= false; tbl.Columns.Append (col2,ADOX.DataTypeEnum.adVarChar,25); //设置主键 tbl.Keys.Append("PrimaryKey",ADOX.KeyTypeEnum.adKeyPrimary,"id","",""); cat.Tables.Append (tbl); Response.Write("<br>数据库表:" + tbl.Name + "已经创建成功!"); tbl=null; cat = null; } #region Web 窗体设计器生成的代码 override protected void OnInit(EventArgs e) { // // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。 // InitializeComponent(); base.OnInit(e); } /// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() { this.Load += new System.EventHandler(this.Page_Load); } #endregion } }
J'espère que cet article sera utile à tout le monde dans la programmation C#.
Pour des explications plus détaillées sur la façon de créer des fichiers Access et des fichiers Excel à l'aide de la programmation C#.net, veuillez prêter attention au site Web PHP chinois pour les articles connexes !

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

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Cet article explore les défis des déréférences du pointeur nul dans C. Il soutient que le problème n'est pas nul lui-même, mais son utilisation abusive. L'article détaille les meilleures pratiques pour prévenir les déréférences, y compris les contrôles de pré-déréférence, le pointeur initiali

Cet article explique comment créer de nouvelles caractères en C en C en utilisant la séquence \ n Escape dans printf et met des fonctions. Il détaille les fonctionnalités et fournit des exemples de code démontrant son utilisation pour les ruptures de ligne en sortie.

Cet article guide les débutants sur le choix d'un compilateur C. Il fait valoir que le CCG, en raison de sa facilité d'utilisation, de sa large disponibilité et de ses vastes ressources, est la meilleure pour les débutants. Cependant, il compare également GCC, Clang, MSVC et TCC, mettant en évidence leur différenciation

Cet article met l'accent sur l'importance continue de Null dans la programmation C moderne. Malgré les progrès, NULL reste crucial pour la gestion explicite du pointeur, empêchant les défauts de segmentation en marquant l'absence d'une adresse mémoire valide. Meilleur prac

Cet article passe en revue les compilateurs C en ligne pour les débutants, en se concentrant sur la facilité d'utilisation et les capacités de débogage. Onlinegdb et Rep.Il sont mis en évidence pour leurs interfaces conviviales et leurs outils de débogage utiles. Autres options comme Programiz et Compil

Cet article compare les plateformes de programmation C en ligne, mettant en évidence les différences de fonctionnalités telles que les outils de débogage, les fonctionnalités IDE, la conformité standard et les limites de mémoire / d'exécution. Il soutient que la "meilleure" plate-forme dépend des besoins des utilisateurs,

Cet article traite de la copie de code efficace dans les Cides. Il souligne que la copie est une fonction IDE, pas une fonctionnalité de compilateur, et détaille des stratégies pour une efficacité améliorée, y compris l'utilisation d'outils de sélection IDE, le pliage de code, la recherche / remplacer, Templa

Cet article dépanne les fenêtres de sortie manquantes dans la compilation du programme C. Il examine des causes telles que le non-exécution de l'exécutable, des erreurs de programme, des paramètres de compilateur incorrects, des processus de fond et une terminaison rapide du programme. Les solutions impliquent ch
