CSV-Dateien in C# lesen und in Excel Tabelle erstellen (IronXL)
IronXL bietet eine Einzeilenlösung zum Lesen von CSV-Dateien in C# mit der LoadCSV-Methode. Sie unterstützt benutzerdefinierte Begrenzungszeichen und die direkte Konvertierung in Excel-Formate. So können Sie aus CSV-Daten eine Excel Tabelle erstellen und Excel exportieren.
Schnellstart: Laden und Konvertieren einer CSV-Datei mit IronXL in einer Zeile
Dieses Beispiel zeigt, wie man mit der LoadCSV-Methode von IronXL eine CSV-Datei einliest und sie mit minimalem Code als Excel-Arbeitsmappe speichert.
-
Installieren Sie IronXL mit NuGet Package Manager
PM > Install-Package IronXL.Excel -
Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
WorkBook wb = WorkBook.LoadCSV("data.csv", ExcelFileFormat.XLSX, listDelimiter: ","); wb.SaveAs("output.xlsx"); -
Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronXL in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
- Downloaden und installieren Sie die C# CSV-Lesebibliothek
- Erstellen Sie ein C#- oder VB-Projekt
- Fügen Sie das Codebeispiel von dieser Seite Ihrem Projekt hinzu
- Specify the CSV path and output name & format
- Starten Sie das Projekt, um das Dokument anzuzeigen
- Installieren Sie eine C#-Bibliothek zum Lesen von CSV-Dateien (IronXL)
- Lesen von CSV-Dateien in C#
- Dateiformat und Begrenzungszeichen angeben
Schritt 1
Wie installiere ich die IronXL-Bibliothek?
Bevor Sie IronXL zum Lesen von CSV-Dateien in MVC, ASP oder .NET Core verwenden können, müssen Sie es installieren. Hier ist ein kurzer Überblick.
Warum sollte ich NuGet Package Manager verwenden?
- Wählen Sie in Visual Studio das Menü Projekt aus
- Verwalten von NuGet-Paketen
- Suchen Sie nach IronXL.Excel
- Installieren
Was sind alternative Installationsmethoden?
Or download from the Iron Software website: https://ironsoftware.com/csharp/excel/packages/IronXL.zip
For .NET developers working with Docker containers, IronXL can be configured in your Docker environment. The library also supports deployment on Azure Functions and AWS Lambda for cloud-based CSV processing.
Anleitung zum Tutorial
Wie kann ich CSV-Dateien programmatisch lesen?
Jetzt zum Projekt!
Welchen Namespace muss ich importieren?
Fügen Sie den IronXL-Namensraum hinzu:
// This namespace is required to access the IronXL functionalities
using IronXL;
// This namespace is required to access the IronXL functionalities
using IronXL;
' This namespace is required to access the IronXL functionalities
Imports IronXL
Wie lade und konvertiere ich CSV-Dateien?
Fügen Sie Code hinzu, um eine CSV-Datei programmatisch mit IronXL und C# zu lesen:
:path=/static-assets/excel/content-code-examples/how-to/csharp-read-csv-read.cs
// Load the CSV file into a WorkBook object, specifying the file path, format, and delimiter
WorkBook workbook = WorkBook.LoadCSV("Read_CSV_Ex.csv", fileFormat: ExcelFileFormat.XLSX, listDelimiter: ",");
// Access the default worksheet within the loaded workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Save the workbook as an Excel file with a specified name
workbook.SaveAs("Csv_To_Excel.xlsx");
' Load the CSV file into a WorkBook object, specifying the file path, format, and delimiter
Dim workbook As WorkBook = WorkBook.LoadCSV("Read_CSV_Ex.csv", fileFormat:=ExcelFileFormat.XLSX, listDelimiter:=",")
' Access the default worksheet within the loaded workbook
Dim ws As WorkSheet = workbook.DefaultWorkSheet
' Save the workbook as an Excel file with a specified name
workbook.SaveAs("Csv_To_Excel.xlsx")
Welche erweiterten CSV-Leseoptionen sind verfügbar?
IronXL bietet Funktionen für die Verarbeitung von CSV-Dateien mit verschiedenen Konfigurationen. Sie können verschiedene Begrenzungszeichen (Semikolon, Tabulator, Pipe) angeben und Dateien mit unterschiedlichen Kodierungen verarbeiten:
// Example: Reading CSV with custom delimiter and encoding
WorkBook workbook = WorkBook.LoadCSV("data.csv",
fileFormat: ExcelFileFormat.XLSX,
listDelimiter: ";", // Using semicolon as delimiter
encoding: Encoding.UTF8);
// Access specific cells after loading
var cellValue = workbook.DefaultWorkSheet["A1"].Value;
// Iterate through rows
foreach (var row in workbook.DefaultWorkSheet.Rows)
{
// Process each row
foreach (var cell in row)
{
Console.WriteLine(cell.Value);
}
}
// Example: Reading CSV with custom delimiter and encoding
WorkBook workbook = WorkBook.LoadCSV("data.csv",
fileFormat: ExcelFileFormat.XLSX,
listDelimiter: ";", // Using semicolon as delimiter
encoding: Encoding.UTF8);
// Access specific cells after loading
var cellValue = workbook.DefaultWorkSheet["A1"].Value;
// Iterate through rows
foreach (var row in workbook.DefaultWorkSheet.Rows)
{
// Process each row
foreach (var cell in row)
{
Console.WriteLine(cell.Value);
}
}
Imports System
Imports IronXL
' Example: Reading CSV with custom delimiter and encoding
Dim workbook As WorkBook = WorkBook.LoadCSV("data.csv",
fileFormat:=ExcelFileFormat.XLSX,
listDelimiter:=";", ' Using semicolon as delimiter
encoding:=Encoding.UTF8)
' Access specific cells after loading
Dim cellValue = workbook.DefaultWorkSheet("A1").Value
' Iterate through rows
For Each row In workbook.DefaultWorkSheet.Rows
' Process each row
For Each cell In row
Console.WriteLine(cell.Value)
Next
Next
Wie sieht die CSV-Datei vor der Verarbeitung aus?
Wie funktioniert die LoadCSV-Methode?
Es wird ein Workbook Objekt erstellt. Die Methode LoadCSV des Objekts Workbook gibt die zu lesende CSV-Datei, das Format, in das sie eingelesen werden soll, und das Trennzeichen an. In diesem Fall wird ein Komma als Trennzeichen verwendet.
Es wird ein Worksheet-Objekt erstellt, in dem der CSV-Inhalt abgelegt wird. Die Datei wird dann unter einem neuen Namen und in einem neuen Format gespeichert. This process is useful when you need to convert between different spreadsheet formats.
Kann ich große CSV-Dateien effizient verarbeiten?
IronXL ist auf Leistung optimiert und kann große CSV-Dateien effizient verarbeiten. For developers working with substantial datasets, the library offers significant performance improvements in recent versions. Beachten Sie bei der Verarbeitung großer Dateien die folgenden Best Practices:
// Reading large CSV files with memory optimization
WorkBook workbook = WorkBook.LoadCSV("large_dataset.csv",
fileFormat: ExcelFileFormat.XLSX,
listDelimiter: ",");
// Process data in chunks
var worksheet = workbook.DefaultWorkSheet;
int rowCount = worksheet.RowCount;
int batchSize = 1000;
for (int i = 0; i < rowCount; i += batchSize)
{
// Process rows in batches
var endIndex = Math.Min(i + batchSize, rowCount);
for (int j = i; j < endIndex; j++)
{
var row = worksheet.GetRow(j);
// Process individual row
}
}
// Reading large CSV files with memory optimization
WorkBook workbook = WorkBook.LoadCSV("large_dataset.csv",
fileFormat: ExcelFileFormat.XLSX,
listDelimiter: ",");
// Process data in chunks
var worksheet = workbook.DefaultWorkSheet;
int rowCount = worksheet.RowCount;
int batchSize = 1000;
for (int i = 0; i < rowCount; i += batchSize)
{
// Process rows in batches
var endIndex = Math.Min(i + batchSize, rowCount);
for (int j = i; j < endIndex; j++)
{
var row = worksheet.GetRow(j);
// Process individual row
}
}
Imports System
Imports IronXL
' Reading large CSV files with memory optimization
Dim workbook As WorkBook = WorkBook.LoadCSV("large_dataset.csv",
fileFormat:=ExcelFileFormat.XLSX,
listDelimiter:=",")
' Process data in chunks
Dim worksheet = workbook.DefaultWorkSheet
Dim rowCount As Integer = worksheet.RowCount
Dim batchSize As Integer = 1000
For i As Integer = 0 To rowCount - 1 Step batchSize
' Process rows in batches
Dim endIndex As Integer = Math.Min(i + batchSize, rowCount)
For j As Integer = i To endIndex - 1
Dim row = worksheet.GetRow(j)
' Process individual row
Next
Next
Wie kann ich CSV-Daten in andere Formate exportieren?
Nach dem Lesen von CSV-Dateien müssen Sie die Daten möglicherweise in verschiedene Formate exportieren. IronXL supports multiple export options including XLSX to CSV conversion, JSON, XML, and HTML. Hier erfahren Sie, wie Sie in verschiedene Formate exportieren können:
// Load CSV and export to multiple formats
WorkBook workbook = WorkBook.LoadCSV("input.csv", ExcelFileFormat.XLSX, ",");
// Export to different formats
workbook.SaveAs("output.xlsx"); // Excel format
workbook.SaveAsJson("output.json"); // JSON format
workbook.SaveAsXml("output.xml"); // XML format
// Export specific worksheet to CSV with custom delimiter
workbook.DefaultWorkSheet.SaveAs("output_custom.csv", ";");
// Load CSV and export to multiple formats
WorkBook workbook = WorkBook.LoadCSV("input.csv", ExcelFileFormat.XLSX, ",");
// Export to different formats
workbook.SaveAs("output.xlsx"); // Excel format
workbook.SaveAsJson("output.json"); // JSON format
workbook.SaveAsXml("output.xml"); // XML format
// Export specific worksheet to CSV with custom delimiter
workbook.DefaultWorkSheet.SaveAs("output_custom.csv", ";");
' Load CSV and export to multiple formats
Dim workbook As WorkBook = WorkBook.LoadCSV("input.csv", ExcelFileFormat.XLSX, ",")
' Export to different formats
workbook.SaveAs("output.xlsx") ' Excel format
workbook.SaveAsJson("output.json") ' JSON format
workbook.SaveAsXml("output.xml") ' XML format
' Export specific worksheet to CSV with custom delimiter
workbook.DefaultWorkSheet.SaveAs("output_custom.csv", ";")
Was ist mit der Arbeit mit CSV-Daten in Webanwendungen?
For ASP.NET developers, IronXL provides seamless integration for reading CSV files in web applications. Sie können CSV-Dateien in Ihren MVC- oder Web-API-Projekten hochladen und verarbeiten:
// Example: Processing uploaded CSV file in ASP.NET
public ActionResult UploadCSV(HttpPostedFileBase file)
{
if (file != null && file.ContentLength > 0)
{
// Save uploaded file temporarily
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/App_Data/"), fileName);
file.SaveAs(path);
// Load and process CSV
WorkBook workbook = WorkBook.LoadCSV(path, ExcelFileFormat.XLSX, ",");
// Convert to DataTable for easy display
var dataTable = workbook.DefaultWorkSheet.ToDataTable();
// Clean up temporary file
System.IO.File.Delete(path);
return View(dataTable);
}
return RedirectToAction("Index");
}
// Example: Processing uploaded CSV file in ASP.NET
public ActionResult UploadCSV(HttpPostedFileBase file)
{
if (file != null && file.ContentLength > 0)
{
// Save uploaded file temporarily
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/App_Data/"), fileName);
file.SaveAs(path);
// Load and process CSV
WorkBook workbook = WorkBook.LoadCSV(path, ExcelFileFormat.XLSX, ",");
// Convert to DataTable for easy display
var dataTable = workbook.DefaultWorkSheet.ToDataTable();
// Clean up temporary file
System.IO.File.Delete(path);
return View(dataTable);
}
return RedirectToAction("Index");
}
Imports System.IO
Imports System.Web
Imports IronXL
Public Function UploadCSV(file As HttpPostedFileBase) As ActionResult
If file IsNot Nothing AndAlso file.ContentLength > 0 Then
' Save uploaded file temporarily
Dim fileName As String = Path.GetFileName(file.FileName)
Dim path As String = Path.Combine(Server.MapPath("~/App_Data/"), fileName)
file.SaveAs(path)
' Load and process CSV
Dim workbook As WorkBook = WorkBook.LoadCSV(path, ExcelFileFormat.XLSX, ",")
' Convert to DataTable for easy display
Dim dataTable As DataTable = workbook.DefaultWorkSheet.ToDataTable()
' Clean up temporary file
System.IO.File.Delete(path)
Return View(dataTable)
End If
Return RedirectToAction("Index")
End Function
Wie gehe ich mit CSV-Dateien mit komplexen Daten um?
Bei der Arbeit mit CSV-Dateien, die Formeln, Sonderzeichen oder gemischte Datentypen enthalten, bietet IronXL robuste Verarbeitungsfunktionen. You can work with formulas and format cell data appropriately:
// Handle CSV with special requirements
WorkBook workbook = WorkBook.LoadCSV("complex_data.csv",
ExcelFileFormat.XLSX,
listDelimiter: ",");
var worksheet = workbook.DefaultWorkSheet;
// Apply formatting to cells
worksheet["A1:A10"].Style.Font.Bold = true;
worksheet["B1:B10"].FormatString = "$#,##0.00"; // Currency format
// Add formulas after loading CSV data
worksheet["D1"].Formula = "=SUM(B1:B10)";
// Handle CSV with special requirements
WorkBook workbook = WorkBook.LoadCSV("complex_data.csv",
ExcelFileFormat.XLSX,
listDelimiter: ",");
var worksheet = workbook.DefaultWorkSheet;
// Apply formatting to cells
worksheet["A1:A10"].Style.Font.Bold = true;
worksheet["B1:B10"].FormatString = "$#,##0.00"; // Currency format
// Add formulas after loading CSV data
worksheet["D1"].Formula = "=SUM(B1:B10)";
Imports IronXL
' Handle CSV with special requirements
Dim workbook As WorkBook = WorkBook.LoadCSV("complex_data.csv", ExcelFileFormat.XLSX, listDelimiter:=",")
Dim worksheet = workbook.DefaultWorkSheet
' Apply formatting to cells
worksheet("A1:A10").Style.Font.Bold = True
worksheet("B1:B10").FormatString = "$#,##0.00" ' Currency format
' Add formulas after loading CSV data
worksheet("D1").Formula = "=SUM(B1:B10)"
Bibliothek Schnellzugriff
Erfahren Sie mehr und teilen Sie mit anderen, wie Sie Zellen in Excel-Tabellen zusammenführen, aufheben und mit ihnen arbeiten können, indem Sie die praktische IronXL.API-Referenzdokumentation verwenden.
IronXL API-ReferenzdokumentationHäufig gestellte Fragen
Wie kann ich CSV-Dateien in C# schnell lesen?
IronXL bietet eine Ein-Zeilen-Lösung zum Lesen von CSV-Dateien in C# unter Verwendung der LoadCSV-Methode. Einfach verwenden: WorkBook wb = WorkBook.LoadCSV("data.csv", ExcelFileFormat.XLSX, listDelimiter: ","); Damit wird Ihre CSV-Datei geladen und Sie können sie mit wb.SaveAs("output.xlsx") als Excel-Arbeitsmappe speichern.
Welche Installationsmethoden gibt es für die CSV-Lesebibliothek?
Sie können IronXL über den NuGet Package Manager in Visual Studio installieren, indem Sie nach "IronXL.Excel" suchen, oder es direkt von der Iron Software Website herunterladen. Die Bibliothek unterstützt auch Docker-Container, Azure Functions und AWS Lambda für Cloud-basierte CSV-Verarbeitung.
Kann ich beim Lesen von CSV-Dateien benutzerdefinierte Begrenzungszeichen verwenden?
Ja, IronXL unterstützt verschiedene Begrenzungszeichen wie Semikolon, Tabulator und Pipe. Sie können das Trennzeichen mit dem Parameter listDelimiter in der LoadCSV-Methode angeben, z. B: WorkBook.LoadCSV("data.csv", ExcelFileFormat.XLSX, listDelimiter: ";").
Welchen Namespace muss ich für die CSV-Lesefunktion importieren?
Sie müssen "using IronXL;" am Anfang Ihrer C#-Datei einfügen, um auf alle IronXL-Funktionen zum Lesen und Verarbeiten von CSV-Dateien zugreifen zu können.
Wie kann ich nach dem Laden einer CSV-Datei auf bestimmte Zellwerte zugreifen?
Nach dem Laden einer CSV-Datei mit der LoadCSV-Methode von IronXL können Sie auf bestimmte Zellen zugreifen, indem Sie Folgendes verwenden: var cellValue = workbook.DefaultWorkSheet["A1"].Value; Auf diese Weise können Sie einzelne Zelldaten aus Ihrer geladenen CSV-Datei abrufen und manipulieren.
Unterstützt die Bibliothek verschiedene Dateikodierungen beim Lesen von CSV-Dateien?
Ja, IronXL unterstützt verschiedene Kodierungen, einschließlich UTF8. Sie können den Kodierungsparameter beim Laden von CSV-Dateien angeben: WorkBook.LoadCSV("data.csv", fileFormat: ExcelFileFormat.XLSX, encoding: Encoding.UTF8).
Kann ich CSV-Dateien direkt in das Excel-Format konvertieren?
Ja, IronXL ermöglicht die direkte Konvertierung von CSV- in Excel-Formate. Nachdem Sie eine CSV-Datei mit LoadCSV geladen haben, können Sie sie sofort mit der SaveAs-Methode als Excel-Datei speichern und dabei Formate wie XLSX oder XLS angeben.

