Jak odczytać plik CSV w C
IronXL zapewnia rozwiązanie w jednej linii do czytania plików CSV w C# za pomocą metody LoadCSV. Obsługuje niestandardowe delimitery i bezpośrednią konwersję do formatów Excel do bezproblemowego przetwarzania danych w aplikacjach .NET.
Szybki start: Załadowanie i konwersja pliku CSV za pomocą IronXL w jednej linii
Ten przykład pokazuje, jak odczytać plik CSV za pomocą metody LoadCSV IronXL i zapisać go jako skoroszyt Excel przy minimalnym kodzie.
-
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 bibliotekę do czytania CSV w C#
- Utwórz projekt C# lub VB
- Dodaj przykład kodu z tej strony do swojego projektu
- Podaj ścieżkę do pliku CSV oraz nazwę i format wyjściowy
- Uruchom projekt, aby zobaczyć dokument
Czytanie plików CSV w aplikacjach .NET
- Zainstaluj bibliotekę C# do czytania plików CSV (IronXL)
- Czytaj pliki CSV w C#
- Określ format pliku i delimiter
Krok 1
Jak zainstalować bibliotekę IronXL?
Zanim użyjesz IronXL do czytania plików CSV w MVC, ASP lub .NET Core, musisz go zainstalować. Oto szybki przewodnik.
Dlaczego 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 są dostępne?
IronXL zapewnia funkcje do obsługi plików CSV z różnymi konfiguracjami. Można określić różne delimitery (średniki, tabulatory, rury) i obsługiwać 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?
Obiekt Workbook jest tworzony. Metoda LoadCSV obiektu Workbook określa plik CSV do odczytu, format do odczytu i delimiter. W tym przypadku używany jest przecinek jako separator.
Utworzono obiekt Worksheet, w którym umieszczona jest treść CSV. Plik następnie jest zapisywany pod nową nazwą i formatem. This process is useful when you need to convert between different spreadsheet formats.
Czy mogę wydajnie przetwarzać duże pliki CSV?
IronXL jest zoptymalizowany dla wydajności i efektywnie obsługuje duże pliki CSV. For developers working with substantial datasets, the library offers significant performance improvements in recent versions. Podczas przetwarzania dużych plików należy rozważyć 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ę eksportować dane CSV do innych formatów?
Po przeczytaniu plików CSV może być potrzebne eksportowanie danych do różnych formatów. IronXL supports multiple export options including XLSX to CSV conversion, JSON, XML, and HTML. Oto jak eksportować do różnych formatów:
// 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 pracą z danymi CSV w aplikacjach webowych?
For ASP.NET developers, IronXL provides seamless integration for reading CSV files in web applications. Można przesyłać 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 ze złożonymi danymi?
Podczas pracy z plikami CSV zawierającymi formuły, znaki specjalne lub mieszane typy danych IronXL zapewnia solidne możliwości 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 scalania, 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, funkcje Azure 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.

