Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Dieses Tutorial demonstriert, wie man eine CSV-Datei mit der IronXL C#-Bibliothek ohne zusätzliche Interop-Installation auf höchst effiziente und effektive Weise lesen kann.
LoadCSV
methode zum Lesen von CSV-DateienExistiert
methode in C#ToDataTable
methodeSaveAs
methode zum Exportieren von Excel-Dateien, wobei CSV-Daten automatisch in Excel umgewandelt werdenSie müssen IronXL zunächst installieren, bevor Sie es zum Lesen von CSV-Dateien in MVC, ASP.NET oder .NET Core verwenden können. Im Folgenden finden Sie einen Überblick über das Verfahren.
Wählen Sie in Visual Studio das Menü "Projekt", "NuGet-Pakete verwalten" und suchen Sie nach "IronXL.Excel", und installieren Sie es.
Installieren Sie das IronXL-Paket im NuGet Package Manager
IronXL ist ein großartiges Werkzeug, wenn Sie Folgendes benötigencSV-Dateien lesen in C#. Das folgende Codebeispiel zeigt, dass Sie eine CSV-Datei mit Kommas oder einem anderen Trennzeichen lesen können.
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
workbook.SaveAs("Csv_To_Excel.xlsx");
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
workbook.SaveAs("Csv_To_Excel.xlsx");
Dim workbook As WorkBook = WorkBook.LoadCSV("Weather.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
Dim ws As WorkSheet = workbook.DefaultWorkSheet
workbook.SaveAs("Csv_To_Excel.xlsx")
CSV-Daten für dieses Lernprogramm
Das Objektarbeitsbuch erstellt wird. Das Objekt WorkBook
istLoadCSV methode wird dann verwendet, um den Namen der CSV-Datei, ihr Format und die in der gelesenen CSV-Datei verwendeten Trennzeichen anzugeben, die als String-Array gespeichert werden. In diesem Szenario werden Kommas als Begrenzungszeichen verwendet.
Danach wird einarbeitsblatt objekt erstellt wird; hier wird der Inhalt der CSV-Datei gespeichert. Die Datei wird dann umbenannt und in einem neuen Format gespeichert. Die Daten der CSV-Datei werden dann im Arbeitsblatt in tabellarischer Form angeordnet. Die Ausgabe sieht dann etwa so aus:
Daten in Excel-Datei konvertiert
Bei CSV-Dateien gibt es mehrere Probleme mit der Behandlung von Zeilenumbrüchen in Feldern und mit der Einschließung von Feldern in Anführungszeichen, wodurch eine einfache Technik zum Aufteilen von Zeichenketten nicht funktioniert Split("'")
. Stattdessen bietet IronXL die Möglichkeit, das Trennzeichen mit Hilfe eines optionalen Parameters der Methode LoadCSV
anzupassen, siehe die API-Dokumentation vonloadCSV für weitere Einzelheiten.
Im nachstehenden Beispiel werden die Zeilen in der CSV-Datei in einer Schleife durchlaufen, und die Konsole wird verwendet, um die Daten in einen Datensatz zu schreiben.
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
DataTable dt = ws.ToDataTable(true);//parse sheet1 of sample.xlsx file into datatable
foreach (DataRow row in dt.Rows) //access rows
{
for (int i = 0; i < dt.Columns.Count; i++) //access columns of corresponding row
{
Console.Write(row [i] + " ");
}
Console.WriteLine();
}
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
DataTable dt = ws.ToDataTable(true);//parse sheet1 of sample.xlsx file into datatable
foreach (DataRow row in dt.Rows) //access rows
{
for (int i = 0; i < dt.Columns.Count; i++) //access columns of corresponding row
{
Console.Write(row [i] + " ");
}
Console.WriteLine();
}
Dim workbook As WorkBook = WorkBook.LoadCSV("Weather.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
Dim ws As WorkSheet = workbook.DefaultWorkSheet
Dim dt As DataTable = ws.ToDataTable(True) 'parse sheet1 of sample.xlsx file into datatable
For Each row As DataRow In dt.Rows 'access rows
For i As Integer = 0 To dt.Columns.Count - 1 'access columns of corresponding row
Console.Write(row (i) & " ")
Next i
Console.WriteLine()
Next row
Zugriff auf Daten aus einer CSV-Datei und Anzeige in der Konsole
Das Verfahren ist einfach: Laden einer CSV-Datei und Speichern als Excel-Datei.
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
workbook.SaveAs("CsvToExcelConversion.xlsx");
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
workbook.SaveAs("CsvToExcelConversion.xlsx");
Dim workbook As WorkBook = WorkBook.LoadCSV("test.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
Dim ws As WorkSheet = workbook.DefaultWorkSheet
workbook.SaveAs("CsvToExcelConversion.xlsx")
Die IronXL-Klasse WorkBook
stellt ein Excel-Blatt dar und verwendet diese Klasse, um eine Excel-Datei in C# zu öffnen. Die folgenden Codebeispiele laden die gewünschte Excel-Datei in ein WorkBook-Objekt:
//Load WorkBook
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");
//Load WorkBook
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");
'Load WorkBook
Dim workbook = WorkBook.Load("Spreadsheets\\sample.xlsx")
workSheet"-Objekte können in zahlreichen WorkBooks zu finden sein. Dies sind die Arbeitsblätter des Excel-Dokuments. Wenn die Arbeitsmappe Arbeitsblätter enthält, können Sie diese wie folgt nach ihrem Namen suchen:
//Open Sheet for reading
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");
//Open Sheet for reading
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");
'Open Sheet for reading
Dim worksheet = workbook.GetWorkSheet("sheetnamegoeshere")
Code zum Lesen der Zellwerte:
// Read from Ranges of cells elegantly.
foreach (var cell in worksheet ["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Read from Ranges of cells elegantly.
foreach (var cell in worksheet ["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
' Read from Ranges of cells elegantly.
For Each cell In worksheet ("A2:A10")
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
Das folgende Codebeispiel kann Formeln aktualisieren oder nach dem Laden und Lesen der Arbeitsmappe und des Arbeitsblatts auf bestimmte Zellen anwenden. Der Code lautet wie folgt:
// Set Formulas
worksheet ["A1"].Formula = "Sum(B8:C12)";
worksheet ["B8"].Formula = "=C9/C11";
worksheet ["G30"].Formula = "Max(C3:C7)";
// Force recalculate all formula values in all sheets.
workbook.EvaluateAll();
// Set Formulas
worksheet ["A1"].Formula = "Sum(B8:C12)";
worksheet ["B8"].Formula = "=C9/C11";
worksheet ["G30"].Formula = "Max(C3:C7)";
// Force recalculate all formula values in all sheets.
workbook.EvaluateAll();
' Set Formulas
worksheet ("A1").Formula = "Sum(B8:C12)"
worksheet ("B8").Formula = "=C9/C11"
worksheet ("G30").Formula = "Max(C3:C7)"
' Force recalculate all formula values in all sheets.
workbook.EvaluateAll()
IronXL wandelt CSV-Dateien mit nur zwei Codezeilen in Excel um, zusätzlich zur CSV-Verarbeitung in C#.
Ohne Interop ist die Verwendung der Excel-API von IronXL ein Kinderspiel. Darüber hinaus bietet IronXL eine breite Palette von Funktionen zur Interaktion mit Excel WorkBook, WorkSheet und Cells Ebene wiekonvertierung zwischen gängigen Formaten, zelldatenformatierung, zellen zusammenführen, einfügen von mathematischen Funktionenund sogar die Verwaltung von Karten undbilder hinzufügen.
Sie können ohne Wasserzeichen starten mitIronXL-Testlizenzschlüssel.
Lizenzen beginnen bei $749 und beinhalten ein Jahr kostenlosen Support und Updates.
IronPDF, IronXL, IronOCR, IronBarcode und der IronWebscraper sind alle Teil vondie Iron Software Suite. Iron Software bietet Ihnen die Möglichkeit, ihr gesamtes Paket zu einem reduzierten Preis zu erwerben. Sie können all diese Tools zum Preis von zwei nutzen.
Diese Option ist auf jeden Fall eine Überlegung wert.
9 .NET API-Produkte für Ihre Bürodokumente