Read a CSV File in C
IronXL zapewnia jednozdaniowe rozwiązanie do odczytu plików CSV w języku C# przy użyciu metody LoadCSV. Obsługuje niestandardowe delimitery i bezpośrednia konwersje do formatow Excel do bezproblemowego przetwarzania danych w aplikacjach .NET.
Szybki start: Zaladowanie i konwersja pliku CSV za pomoca IronXL w jednej linii
Ten przykład pokazuje, jak odczytać plik CSV przy użyciu metody LoadCSV biblioteki IronXL i zapisać go jako skoroszyt programu Excel przy użyciu minimalnej ilości kodu.
-
Install IronXL with NuGet Package Manager
PM > Install-Package IronXL.Excel -
Skopiuj i uruchom ten fragment kodu.
WorkBook wb = WorkBook.LoadCSV("data.csv", ExcelFileFormat.XLSX, listDelimiter: ","); wb.SaveAs("output.xlsx"); -
Wdrożenie do testowania w środowisku produkcyjnym
Rozpocznij używanie IronXL w swoim projekcie już dziś z darmową wersją próbną
Minimalny proces (5 kroków)
- Pobierz i zainstaluj biblioteke do czytania CSV w C#
- Utworz projekt C# lub VB
- Dodaj przykład kodu z tej strony do swojego projektu
- Specify the CSV path and output name & format
- Uruchom projekt, aby zobaczyć dokument
Czytanie plików CSV w aplikacjach .NET
- Zainstaluj biblioteke C# do czytania plików CSV (IronXL)
- Czytaj pliki CSV w C#
- Okresl format pliku i delimiter
Krok 1
Jak zainstalować bibliotekę IronXL?
Zanim uzyjesz IronXL do czytania plików CSV w MVC, ASP lub .NET Core, musisz go zainstalować. Oto szybki przewodnik.
Dłączego warto korzystać z menedżera pakietów NuGet?
- W Visual Studio wybierz menu Projekt
- Zarządzanie pakietami NuGet
- Wyszukaj
IronXl.Excel - Zainstaluj
Jakie są alternatywne metody instalacji?
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.
Poradnik "Jak to zrobić"
Jak programowo odczytać pliki CSV?
Teraz do projektu!
Jaki przestrzeń nazw muszę zaimportować?
Dodaj przestrzeń nazw IronXL:
// 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
Jak załadować i przekonwertować pliki CSV?
Dodaj kod do programowego czytania pliku CSV z IronXL i C#:
: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")
Jakie zaawansowane opcje czytania CSV sa dostępne?
IronXL zapewnia funkcje do obsługi plików CSV z różnymi konfiguracjami. Można okreslic różne delimitery (średniki, tabulatory, rury) i obsługiwac pliki z różnymi kodowaniami:
// 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
Jak wygląda plik CSV przed przetwarzaniem?
Jak działa metoda LoadCSV?
Tworzony jest obiekt Workbook. Metoda LoadCSV obiektu Workbook określa plik CSV do odczytania, format, w jakim ma zostać odczytany, oraz separator. W tym przypadku używany jest przecinek jako separator.
Obiekt Worksheet jest tworzony w miejscu, w którym umieszczana jest zawartość pliku CSV. Plik następnie jest zapisywany pod nowa nazwa i formatem. This process is useful when you need to convert between different spreadsheet formats.
Czy mogę wydajnie przetwarzać duze pliki CSV?
IronXL jest zoptymalizowany dla wydajności i efektywnie obsługuje duze pliki CSV. For developers working with substantial datasets, the library offers significant performance improvements in recent versions. Podczas przetwarzania duzych plików należy rozwazyc te najlepsze praktyki:
// 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
Jak mogę eksportowac dane CSV do innych formatow?
Po przeczytaniu plików CSV może być potrzebne eksportowanie danych do różnych formatow. IronXL supports multiple export options including XLSX to CSV conversion, JSON, XML, and HTML. Oto jak eksportowac do różnych formatow:
// 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", ";")
Co z praca z danymi CSV w aplikacjach webowych?
For ASP.NET developers, IronXL provides seamless integration for reading CSV files in web applications. Można przesylac i przetwarzać pliki CSV w swoich projektach MVC lub Web API:
// 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
Jak przetwarzać pliki CSV z zlozonymi danymi?
Podczas pracy z plikami CSV zawierajacymi formuly, znaki specjalne lub mieszane typy danych IronXL zapewnia solidne możliwosci obsługi. 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)"
Szybki dostęp do biblioteki
Dokumentacja API IronXL
Dowiedz się więcej i podziel się informacjami na temat scałania, rozdzielania i pracy z komórkami w arkuszach kalkulacyjnych Excel, korzystając z przydatnej Dokumentacji API IronXL.
Dokumentacja API IronXLCzęsto Zadawane Pytania
Jak szybko odczytać pliki CSV w C#?
IronXL zapewnia rozwiązanie jednym wierszem do odczytywania plików CSV w C# za pomocą metody LoadCSV. Po prostu użyj: WorkBook wb = WorkBook.LoadCSV('data.csv', ExcelFileFormat.XLSX, listDelimiter: ','); To ładuje Twój plik CSV i pozwala zapisać go jako skoroszyt Excel przy użyciu wb.SaveAs('output.xlsx').
Jakie metody instalacji są dostępne dla biblioteki odczytywania CSV?
Możesz zainstalować IronXL przez Menedżera pakietów NuGet w Visual Studio, wyszukując 'IronXL.Excel', lub pobrać bezpośrednio z witryny Iron Software. Biblioteka obsługuje także kontenery Docker, Azure Functions oraz AWS Lambda dla przetwarzania CSV w chmurze.
Czy mogę używać niestandardowych separatorów podczas odczytywania plików CSV?
Tak, IronXL obsługuje różne separatory, w tym średniki, tabulatory i pionowe kreski. Możesz określić separator, używając parametru listDelimiter w metodzie LoadCSV, na przykład: WorkBook.LoadCSV('data.csv', ExcelFileFormat.XLSX, listDelimiter: ';').
Jaki namespace muszę zaimportować dla funkcjonalności odczytywania CSV?
Musisz dodać 'using IronXL;' na górze swojego pliku C#, aby uzyskać dostęp do wszystkich funkcjonalności IronXL do odczytywania i przetwarzania plików CSV.
Jak mogę uzyskać dostęp do konkretnych wartości komórek po załadowaniu pliku CSV?
Po załadowaniu pliku CSV za pomocą metody LoadCSV IronXL, możesz uzyskać dostęp do konkretnych komórek, używając: var cellValue = workbook.DefaultWorkSheet['A1'].Value; Pozwala to na pobieranie i manipulowanie poszczególnymi danymi komórek z załadowanego CSV.
Czy biblioteka obsługuje różne kodowania plików podczas odczytywania plików CSV?
Tak, IronXL obsługuje różne kodowania, w tym UTF8. Możesz określić parametr kodowania podczas ładowania plików CSV: WorkBook.LoadCSV('data.csv', fileFormat: ExcelFileFormat.XLSX, encoding: Encoding.UTF8).
Czy mogę bezpośrednio konwertować pliki CSV na format Excel?
Tak, IronXL pozwala na bezpośrednią konwersję z CSV do formatów Excel. Po załadowaniu pliku CSV za pomocą LoadCSV, możesz od razu zapisać go jako plik Excel, używając metody SaveAs, określając formaty takie jak XLSX lub XLS.

