


Ausführliche Erläuterung des Beispielcodes zum Erstellen von Excel-Dateien und zum Exportieren von Daten in Excel-Dateien in C# (Bild)
Werkzeugmaterialien:
Windows 7, Visual Studio 2010, Microsoft Office 2007
Lösung erstellen
Menü》Neu》Projekt》Windows Forms-Anwendung:
Zugehörige Komponenten hinzufügen:
Fügen Sie zwei DataGridView, ein TextBox und zwei Schaltflächen hinzu, wie unten gezeigt:
Excel-Ressource hinzufügen:
C#Erstellen Sie eine Excel-Datei. Hier wird tatsächlich eine vorab erstellte Excel-Datei aus der Ressource extrahiert. Verwenden Sie abschließend die OleDb-Methode, um eine Verbindung zu Excel herzustellen und Daten in die Excel-Datei zu schreiben.
Erstellen Sie zunächst eine neue Excel-Datei im Ordner und legen Sie die Spaltennamen in der ersten Zeile von Sheet1 fest:
Double -Klicken Sie auf die Datei „Resources.resx“, um die Ressourcendateiansicht zu öffnen:
Fügen Sie eine vorhandene Datei hinzu und wählen Sie die gerade erstellte Excel-Datei aus
Extrahieren Sie die Excel-Datei aus der Ressource
string excelPath = AppDomain.CurrentDomain.BaseDirectory + "Excel" + DateTime.Now.Ticks + ".xlsx"; if (System.IO.File.Exists(excelPath)) { textBox1.Text += ("文件已经存在!"); return; } try { //从资源中提取Excel文件 System.IO.FileStream fs = new System.IO.FileStream(excelPath, FileMode.OpenOrCreate); fs.SetLength(0); fs.Write(Properties.Resources.Excel, 0, Properties.Resources.Excel.Length); fs.Close(); fs.Dispose(); textBox1.Text = "提取Excel文件成功!" + "\r\n"; } catch (System.Exception ex) { excelPath = string.Empty; textBox1.Text += ("提取Excel文件失败:" + ex.Message); textBox1.Text += ("\r\n"); Application.DoEvents(); return; }
Definieren Sie die Verbindungszeichenfolge
//定义OleDB连接字符串 string strConn = "Provider=Microsoft.Ace.OleDb.12.0;Persist Security Info=False;" + "data source=" + @excelPath + "; Extended Properties='Excel 12.0; HDR=yes; IMEX=10'"; OleDbConnection conn = new OleDbConnection(); conn.ConnectionString = strConn;
Hinweis: Der Wert von IMEX in der Verbindungszeichenfolge ist 10. Wenn es 1 oder 2 ist, wird der Fehler „ Vorgang muss eine aktualisierbare Abfrage verwenden“ gemeldet, wenn die Insert Into-Anweisung ausgeführt wird.
Zeigen Sie die Informationen aller Tabellen in der Excel-Datei in dataGridView1 an
DataTable oleDt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); dataGridView1.DataSource = oleDt; dataGridView1.Show();
Fügen Sie mehrere Datenelemente in die Tabelle „Sheet1“ ein. Wenn Sie auf die Excel-Tabelle zugreifen, müssen Sie diese hinzufügen Nach dem Tabellennamen muss die Insert-Anweisung nicht den Spaltennamen
OleDbCommand cmd = null; try { //向"Sheet1"表中插入几条数据,访问Excel的表的时候需要在表名后添加"$"符号,Insert语句可以不指定列名 cmd = new OleDbCommand("Insert Into [Sheet1$] Values('abc', 'bac', '0', '123456', 'test','测试','aa')", conn);//(A,B,C,D,E,F,G) cmd.ExecuteNonQuery(); cmd.ExecuteNonQuery(); cmd.ExecuteNonQuery(); cmd.ExecuteNonQuery(); cmd.ExecuteNonQuery(); } catch (System.Exception ex) { textBox1.Text += ("插入数据失败:" + ex.Message); textBox1.Text += ("\r\n"); }
angeben, um den Inhalt der Tabelle „Sheet1“ in dataGridView2 anzuzeigen Sie müssen das Symbol „$“ nach dem Tabellennamen hinzufügen.
cmd = new OleDbCommand("Select * From [Sheet1$]", conn); OleDbDataAdapter adp = new OleDbDataAdapter(cmd); DataSet ds = new DataSet(); adp.Fill(ds); dataGridView2.DataSource = ds.Tables[0];
Durchlaufen Sie den Inhalt des Schemas.
DataTable dt = conn.GetSchema(); for (int i = 0; i < dt.Columns.Count; i++) { textBox1.Text += dt.Columns[i].Caption; if (i + 1 < dt.Columns.Count) { textBox1.Text += ","; } } for (int j = 0; j < dt.Rows.Count; j++) { for (int i = 0; i < dt.Columns.Count; i++) { if (dt.Rows[j][dt.Columns[i]] != null) { textBox1.Text += dt.Rows[j][dt.Columns[i]].ToString(); } else { textBox1.Text += "null"; } if (i + 1 < dt.Columns.Count) { textBox1.Text += ","; } } textBox1.Text += ("\r\n"); }
Schließen Sie die Excel-Datenverbindung.
if (conn.State != ConnectionState.Closed) { try { conn.Close(); } catch (System.Exception ex) { textBox1.Text += ("关闭Excel数据连接:" + ex.Message); textBox1.Text += ("\r\n"); } }
Öffnen Sie das Dateiverzeichnis
System.Diagnostics.Process.Start("explorer.exe", AppDomain.CurrentDomain.BaseDirectory);
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung des Beispielcodes zum Erstellen von Excel-Dateien und zum Exportieren von Daten in Excel-Dateien in C# (Bild). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Leitfaden zu Active Directory mit C#. Hier besprechen wir die Einführung und die Funktionsweise von Active Directory in C# sowie die Syntax und das Beispiel.

Leitfaden zur C#-Serialisierung. Hier besprechen wir die Einführung, die Schritte des C#-Serialisierungsobjekts, die Funktionsweise bzw. das Beispiel.

Leitfaden zum Zufallszahlengenerator in C#. Hier besprechen wir die Funktionsweise des Zufallszahlengenerators, das Konzept von Pseudozufallszahlen und sicheren Zahlen.

Leitfaden zur C#-Datenrasteransicht. Hier diskutieren wir die Beispiele, wie eine Datenrasteransicht aus der SQL-Datenbank oder einer Excel-Datei geladen und exportiert werden kann.

Leitfaden zu Mustern in C#. Hier besprechen wir die Einführung und die drei wichtigsten Arten von Mustern in C# zusammen mit ihren Beispielen und der Code-Implementierung.

Leitfaden zu Primzahlen in C#. Hier besprechen wir die Einführung und Beispiele von Primzahlen in C# sowie die Codeimplementierung.

Leitfaden zur Fakultät in C#. Hier diskutieren wir die Einführung in die Fakultät in C# zusammen mit verschiedenen Beispielen und Code-Implementierungen.

Der Unterschied zwischen Multithreading und Asynchron besteht darin, dass Multithreading gleichzeitig mehrere Threads ausführt, während asynchron Operationen ausführt, ohne den aktuellen Thread zu blockieren. Multithreading wird für rechenintensive Aufgaben verwendet, während asynchron für die Benutzerinteraktion verwendet wird. Der Vorteil des Multi-Threading besteht darin, die Rechenleistung zu verbessern, während der Vorteil von Asynchron nicht darin besteht, UI-Threads zu blockieren. Die Auswahl von Multithreading oder Asynchron ist von der Art der Aufgabe abhängt: Berechnungsintensive Aufgaben verwenden Multithreading, Aufgaben, die mit externen Ressourcen interagieren und die UI-Reaktionsfähigkeit asynchron verwenden müssen.
