Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Im folgenden Artikel wird gezeigt, wie man einen C#-Datensatz in eine CSV-Datei konvertiert.
IronXL ist eine großartige Lösung für die Arbeit mit Tabellenkalkulationen, ob im CSV-Format oder in Excel-Dateien. IronXL ist kostenlos für die Entwicklung, einfach zu bedienen und bietet umfangreiche Funktionen für die Arbeit mit jeder Art von Tabellenkalkulation. Es ist sicher und bietet eine hohe Leistung. Bevor wir fortfahren, wollen wir IronXL kurz vorstellen.
IronXL ist einIron Software bibliothek, die es C#-Entwicklern ermöglicht, Excel zu lesen, zu erzeugen und zu bearbeiten(und andere Tabellenkalkulationsdateien) in .NET-Anwendungen und Websites.
IronXL ist ein schneller und einfacher Weg, um mit Excel und anderen Tabellenkalkulationsdateien in C# und .NET zu arbeiten. IronXL funktioniert gut mit .NET-Framework, .NET Core und Azure, ohne dass Office Excel Interopm benötigt wird. IronXL erfordert auch keine Installation von Microsoft Office oder andere Abhängigkeiten.
Beginnen wir mit dem Erstellen und Schreiben des Codes für die Erstellung einer CSV-Datei für einen Datensatz.
Öffnen Sie die Visual Studio IDE; die neueste Version von Visual Studio wird empfohlen, aber Sie können jede beliebige Version verwenden. Bitte beachten Sie, dass die Schritte zur Erstellung eines neuen Projekts von Version zu Version unterschiedlich sein können.
Startfenster von Visual Studio
Klicken Sie auf Neues Projekt erstellen. Es erscheint ein neues Fenster (siehe unten).
Erstellen Sie ein neues Projekt in Visual Studio
Wählen Sie Ihre bevorzugte Projektvorlage aus der Liste aus. Klicken Sie auf die Schaltfläche Weiter. Daraufhin wird ein neues Fenster angezeigt (siehe unten).
Konfigurieren Sie das neu erstellte Projekt
Benennen Sie Ihr Projekt, wählen Sie den Speicherort und klicken Sie auf die Schaltfläche Weiter. Es erscheint ein neues Fenster (siehe unten).
Wählen Sie eine .NET-Framework-Version
Wählen Sie das gewünschte .NET-Framework aus. Sie können jedes .NET-Framework auswählen, das Ihren Anforderungen entspricht, da IronXL jedes .NET-Framework unterstützt. In diesem Lernprogramm wird .NET 7 verwendet. Klicken Sie auf die Schaltfläche Erstellen, und es wird ein neues Projekt erstellt, wie unten gezeigt.
eine neue Konsolenanwendung in Visual Studio
Installieren Sie nun das IronXL NuGet-Paket, um es in dieser Anwendung zu verwenden.
Öffnen Sie die NuGet-Paketmanager-Konsole und geben Sie den folgenden Befehl ein.
Install-Package IronXL.Excel
DieNuGet-Paket wird wie unten gezeigt installiert und ist sofort einsatzbereit.
Die Installation des IronXL-Pakets und seiner Abhängigkeiten
Lassen Sie uns nun etwas Code schreiben, um einen Datensatz in eine CSV-Datei in C# zu konvertieren.
In diesem Beispiel werden Daten aus einer SQL-Server-Datenbank eingefügt. Nachdem wir den Datensatz aus der SQL-DB erhalten haben, erstellen wir eine CSV-Datei mit diesen Eingabedaten.
Der erste Schritt ist das Auffüllen von Daten aus SQL, aber Sie können jede beliebige Datenquelle verwenden.
In diesem Lehrgang werden die folgenden Daten verwendet:
Erstellen Sie eine neue Datenbank mit Beispieldaten
Hier ist das SQL-Skript zur Erstellung der Beispieldaten:
USE Test_DB
Create Table STUDENT_DATA
(
REG_NUM INT PRIMARY KEY,
FIRST_NAME VARCHAR(30),
LAST_NAME VARCHAR(30),
CLASS VARCHAR(5),
CONTACT_NUM VARCHAR(15)
);
INSERT INTO STUDENT_DATA
VALUES
(123, 'JHON', 'SMITH', '2', '(223) 444-1234'),
(124, 'THOMAS', 'CHARLES', '2', '(332) 555-1235'),
(125, 'WILLIAM', 'RICHARD', '2', '(432) 666-1236'),
(126, 'JAMES', 'BOND', '2', '(543) 777-1237'),
(127, 'CRISTOPHER', 'MICHAL', '2', '(555) 999-1238'),
(128, 'DONALD', 'MARK', '2', '(777) 888-1239');
Der folgende C#-Code wird verwendet, um die Datentabelle in eine CSV-Datei zu exportieren.
public static DataTable getData()
{
string connString = @"server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;";
string query = "select * from STUDENT_DATA";
try
{
SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
// create data adapter
SqlDataAdapter da = new SqlDataAdapter(cmd);
// this will query your database and return the result to your datatable
DataTable dt = new DataTable();
da.Fill(dt);
da.Dispose();
return dt;
} catch(Exception)
{
throw;
}
}
static void Main(string [] args)
{
DataTable table = getData();
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "JOHN";
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
ws ["A" + (rowCount)].Value = row [0].ToString();
ws ["B" + (rowCount)].Value = row [1].ToString();
ws ["C" + (rowCount)].Value = row [2].ToString();
ws ["D" + (rowCount)].Value = row [3].ToString();
ws ["E" + (rowCount)].Value = row [4].ToString();
rowCount++;
}
wb.SaveAsCsv(@"D:\Tutorial Project\Save_DataTable_CSV.csv"); //
}
public static DataTable getData()
{
string connString = @"server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;";
string query = "select * from STUDENT_DATA";
try
{
SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
// create data adapter
SqlDataAdapter da = new SqlDataAdapter(cmd);
// this will query your database and return the result to your datatable
DataTable dt = new DataTable();
da.Fill(dt);
da.Dispose();
return dt;
} catch(Exception)
{
throw;
}
}
static void Main(string [] args)
{
DataTable table = getData();
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "JOHN";
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
ws ["A" + (rowCount)].Value = row [0].ToString();
ws ["B" + (rowCount)].Value = row [1].ToString();
ws ["C" + (rowCount)].Value = row [2].ToString();
ws ["D" + (rowCount)].Value = row [3].ToString();
ws ["E" + (rowCount)].Value = row [4].ToString();
rowCount++;
}
wb.SaveAsCsv(@"D:\Tutorial Project\Save_DataTable_CSV.csv"); //
}
Public Shared Function getData() As DataTable
Dim connString As String = "server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;"
Dim query As String = "select * from STUDENT_DATA"
Try
Dim conn As New SqlConnection(connString)
Dim cmd As New SqlCommand(query, conn)
conn.Open()
' create data adapter
Dim da As New SqlDataAdapter(cmd)
' this will query your database and return the result to your datatable
Dim dt As New DataTable()
da.Fill(dt)
da.Dispose()
Return dt
Catch e1 As Exception
Throw
End Try
End Function
Shared Sub Main(ByVal args() As String)
Dim table As DataTable = getData()
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
wb.Metadata.Author = "JOHN"
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1
For Each row As DataRow In table.Rows
ws ("A" & (rowCount)).Value = row (0).ToString()
ws ("B" & (rowCount)).Value = row (1).ToString()
ws ("C" & (rowCount)).Value = row (2).ToString()
ws ("D" & (rowCount)).Value = row (3).ToString()
ws ("E" & (rowCount)).Value = row (4).ToString()
rowCount += 1
Next row
wb.SaveAsCsv("D:\Tutorial Project\Save_DataTable_CSV.csv")
End Sub
Die Methode getData()
Daten aus einer SQL Server-Datenbank abrufen, wie bereits erwähnt.
In der Hauptfunktion wird einearbeitsbuch mit IronXL und erstellen Sie dann einearbeitsblatt.
In einer "for"-Schleife werden die Daten in die Zeilen des angegebenen Arbeitsblatts eingefügt.
Danach speichern Sie diese Datei als CSV-Datei mit dem BefehlspeichernAlsCsv funktion von IronXL.
Die von diesem Programm erzeugte CSV-Datei sieht wie folgt aus:
Die CSV-Ausgabedatei
Es ist klar, dass die CSV-Datei ordnungsgemäß erstellt wird und mit den Eingaben übereinstimmt.
In diesem Artikel wurde gezeigt, wie man in C# eine CSV-Datei aus einem Datensatz erstellt. Die Bibliothek kann auchcSV-Dateien mit C# lesen. Der Datensatz aus einer SQL Server-Datenbank wird in drei Schritten aufgefüllt und eine CSV-Datei erstellt:
Daten von SQL Server abrufen.
Daten in eine Datentabelle einfügen.
Erstellen Sie eine CSV-Datei aus dieser Datentabelle.
Es ist sehr einfach, eine CSV-Datei in .NET 7 mit IronXL zu erstellen, wie oben gezeigt. Die Leistung des Programms ist außergewöhnlich, da es in .NET 7 mit IronXL geschrieben ist. IronXL bietet weitere nützliche Funktionen wie das Erstellen, Lesen und Bearbeiten von Excel-Dateien. Weitere Einzelheiten finden Sie auf der Websiteoffizielle Dokumentation.
Darüber hinaus bietet IronPDF Entwicklern Methoden, umpDF-Dokumente in Bilder umwandeln undtext und Inhalt extrahieren aus einer PDF-Datei. Darüber hinaus kann IronPDF auchrendering-Diagramme in PDFs,hinzufügen von Barcodes, erhöhung der Sicherheit durch Passwörter programmatisch.
Die kostenlose Version von IronXL wird für Entwicklungszwecke verwendet. Um eine Anwendung in der Produktion einzusetzen, benötigen Sie einekostenloser Test version oder einehandelslizenz. IronXL ist Teil vonEisenSuitedie aus fünf Bibliotheken besteht:
IronXLdie heute erforscht wird.
IronPDF zum Erzeugen, Lesen und Verarbeiten von PDF-Dateien
IronOCR für die Arbeit bei der Extraktion von Text aus Bildern
IronBarcode zum Lesen und Erzeugen von Barcodes
IronWebScraper zur Extraktion von Strukturdaten aus Websites.
Sie erhalten alle diese Produkte zum Preis von zwei, wenn Sie sie zusammen kaufen.
9 .NET API-Produkte für Ihre Bürodokumente