Jak konwertować pliki XLSX na CSV, JSON, XML i inne formaty w języku C
IronXL konwertuje pliki Excel do wielu formatów, w tym JSON, CSV, XML oraz starszych formatów Excel, takich jak XLS, przy użyciu prostych, jednowierszowych poleceń, które eliminują konieczność ręcznego parsowania.
IronXL konwertuje dowolny plik Excel do różnych formatów, zapewniając programistom narzędzia do pracy z Excelem w języku C# bez konieczności korzystania z Interop. Niezależnie od tego, czy chodzi o migrację danych między systemami, tworzenie eksportów danych dla aplikacji internetowych, czy integrację ze starszymi systemami, IronXL upraszcza proces konwersji.
Formaty te obejmują: JSON dla nowoczesnych interfejsów API, CSV do wymiany danych, XML do przechowywania danych strukturalnych oraz starsze formaty Excel, takie jak XLS, zapewniające kompatybilność wsteczną. Każdy format służy do konkretnych zastosowań — CSV sprawdza się dobrze przy importowaniu danych z baz, JSON integruje się z interfejsami API REST, a XML zachowuje hierarchiczne relacje między danymi.
W tym artykule pokazano, jak używać IronXL do konwersji do formatów XML, CSV, JSON oraz eksportowania arkuszy kalkulacyjnych Excel jako zestawów danych do bezpośredniej integracji z kontrolkami danych .NET.
Szybki start: Konwersja pliku XLSX do formatu CSV za pomocą jednego wiersza
Ten przykład pokazuje, jak IronXL konwertuje istniejący skoroszyt Excel na plik CSV w jednym wierszu. Załaduj swój skoroszyt i zapisz go bezpośrednio jako CSV, aby od razu rozpocząć pracę.
-
Install IronXL with NuGet Package Manager
PM > Install-Package IronXl.Excel -
Skopiuj i uruchom ten fragment kodu.
IronXl.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv"); -
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 bibliotekę C# do konwersji plików XLSX na CSV
- Wczytaj istniejący arkusz kalkulacyjny Excel w formacie XLSX
- Otwórz lub zmodyfikuj skoroszyt
- Eksportuj do pliku CSV lub kilku innych formatów, w tym JSON, TSV i XML
- Sprawdź pliki wyjściowe i zastosuj dalsze przetwarzanie
Krok 1
Jak zainstalować bibliotekę IronXL?
Najpierw zainstaluj IronXL, zanim zaczniesz go używać w swoich aplikacjach. IronXL obsługuje aplikacje .NET MAUI, Blazor oraz tradycyjne aplikacje .NET. Użyj jednej z tych metod instalacji:
Pobierz: https://ironsoftware.com/csharp/excel/docs/
Lub skorzystaj z menedżera pakietów NuGet:
- Kliknij prawym przyciskiem myszy nazwę rozwiązania w Eksploratorze rozwiązań
- Kliknij Zarządzaj pakietami NuGet
- Wyszukaj IronXl.Excel
- Zainstaluj
Install-Package IronXl.Excel
Poradnik "Jak to zrobić"
Jak mogę konwertować pliki Excel do różnych formatów?
IronXL oferuje funkcje konwersji, które automatycznie obsługują złożone parsowanie i formatowanie.
Dodaj następujący kod:
:path=/static-assets/excel/content-code-examples/how-to/csharp-convert-xlsx-csv-convert.cs
using IronXL;
// Load an existing Excel workbook
WorkBook workbook = WorkBook.Load("Normal_Excel_File.xlsx");
// Set metadata title for the workbook
workbook.Metadata.Title = "Normal_Excel_File.xlsx";
// Save the workbook in different formats
workbook.SaveAs("XLS_Export.xls");
workbook.SaveAs("XLSX_Export.xlsx");
workbook.SaveAsCsv("CSV_Export.csv");
workbook.SaveAsJson("JSON_Export.json");
workbook.SaveAsXml("XML_Export.xml");
// Convert the workbook to a DataSet, allowing integration with other data tools like DataGridView
System.Data.DataSet dataSet = workbook.ToDataSet();
Imports IronXL
' Load an existing Excel workbook
Dim workbook As WorkBook = WorkBook.Load("Normal_Excel_File.xlsx")
' Set metadata title for the workbook
workbook.Metadata.Title = "Normal_Excel_File.xlsx"
' Save the workbook in different formats
workbook.SaveAs("XLS_Export.xls")
workbook.SaveAs("XLSX_Export.xlsx")
workbook.SaveAsCsv("CSV_Export.csv")
workbook.SaveAsJson("JSON_Export.json")
workbook.SaveAsXml("XML_Export.xml")
' Convert the workbook to a DataSet, allowing integration with other data tools like DataGridView
Dim dataSet As System.Data.DataSet = workbook.ToDataSet()
Powyższy kod ładuje plik XLSX, dodaje tytuł, a następnie konwertuje go do kilku formatów. Podczas konwersji do formatu CSV IronXL obsługuje znaki specjalne, komórki wielowierszowe oraz prawidłowe escapowanie. W przypadku eksportu do formatu JSON tworzy on ustrukturyzowaną reprezentację obiektową danych z arkusza kalkulacyjnego. Konwersja do formatu XML zachowuje formatowanie komórek i typy danych. Na koniec arkusz roboczy jest eksportowany jako zestaw danych (DataSet) do wykorzystania z obiektami DataGridView, co sprawdza się dobrze podczas pracy z tabelami danych (DataTables).
Oto kolejny przykład pokazujący, jak konwertować określone arkusze z opcjami niestandardowymi:
using IronXL;
// Load workbook and select specific worksheet
WorkBook workbook = WorkBook.Load("MultiSheet.xlsx");
WorkSheet sheet = workbook.WorkSheets["SalesData"];
// Convert just one worksheet to CSV with custom delimiter
sheet.SaveAsCsv("SalesData.csv", delimiter: ";");
// Export to JSON with formatting preserved
var jsonOptions = new JsonSaveOptions
{
PreserveFormatting = true,
IncludeHeaders = true
};
sheet.SaveAsJson("SalesData.json", jsonOptions);
// Convert to XML with custom root element
sheet.SaveAsXml("SalesData.xml", "SalesReport");
using IronXL;
// Load workbook and select specific worksheet
WorkBook workbook = WorkBook.Load("MultiSheet.xlsx");
WorkSheet sheet = workbook.WorkSheets["SalesData"];
// Convert just one worksheet to CSV with custom delimiter
sheet.SaveAsCsv("SalesData.csv", delimiter: ";");
// Export to JSON with formatting preserved
var jsonOptions = new JsonSaveOptions
{
PreserveFormatting = true,
IncludeHeaders = true
};
sheet.SaveAsJson("SalesData.json", jsonOptions);
// Convert to XML with custom root element
sheet.SaveAsXml("SalesData.xml", "SalesReport");
Imports IronXL
' Load workbook and select specific worksheet
Dim workbook As WorkBook = WorkBook.Load("MultiSheet.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets("SalesData")
' Convert just one worksheet to CSV with custom delimiter
sheet.SaveAsCsv("SalesData.csv", delimiter:=";")
' Export to JSON with formatting preserved
Dim jsonOptions As New JsonSaveOptions With {
.PreserveFormatting = True,
.IncludeHeaders = True
}
sheet.SaveAsJson("SalesData.json", jsonOptions)
' Convert to XML with custom root element
sheet.SaveAsXml("SalesData.xml", "SalesReport")
W zaawansowanych scenariuszach można eksportować do wielu formatów jednocześnie lub efektywnie obsługiwać duże pliki:
using IronXL;
using System.Threading.Tasks;
// Async conversion for large files
public async Task ConvertLargeFileAsync(string inputPath)
{
WorkBook workbook = WorkBook.Load(inputPath);
// Parallel export to multiple formats
var tasks = new[]
{
Task.Run(() => workbook.SaveAsCsv("output.csv")),
Task.Run(() => workbook.SaveAsJson("output.json")),
Task.Run(() => workbook.SaveAsXml("output.xml"))
};
await Task.WhenAll(tasks);
}
using IronXL;
using System.Threading.Tasks;
// Async conversion for large files
public async Task ConvertLargeFileAsync(string inputPath)
{
WorkBook workbook = WorkBook.Load(inputPath);
// Parallel export to multiple formats
var tasks = new[]
{
Task.Run(() => workbook.SaveAsCsv("output.csv")),
Task.Run(() => workbook.SaveAsJson("output.json")),
Task.Run(() => workbook.SaveAsXml("output.xml"))
};
await Task.WhenAll(tasks);
}
Imports IronXL
Imports System.Threading.Tasks
' Async conversion for large files
Public Async Function ConvertLargeFileAsync(inputPath As String) As Task
Dim workbook As WorkBook = WorkBook.Load(inputPath)
' Parallel export to multiple formats
Dim tasks = New Task() {
Task.Run(Sub() workbook.SaveAsCsv("output.csv")),
Task.Run(Sub() workbook.SaveAsJson("output.json")),
Task.Run(Sub() workbook.SaveAsXml("output.xml"))
}
Await Task.WhenAll(tasks)
End Function
Poniżej przedstawiono różne wyeksportowane pliki.
Każdy format konwersji służy innym celom w nowoczesnych aplikacjach. Pliki CSV sprawdzają się dobrze przy importowaniu danych do baz danych lub narzędzi do analizy danych. Format JSON nadaje się do interfejsów API sieci Web i aplikacji JavaScript. XML zachowuje strukturę danych i jest powszechnie stosowany w systemach Enterprise. Starszy format XLS zapewnia kompatybilność ze starszymi wersjami programu Excel oraz systemami wymagającymi kompatybilności wstecznej.
Podczas pracy z tymi konwersjami IronXL automatycznie radzi sobie z wieloma złożonymi kwestiami:
- Kodowanie znaków: Prawidłowe kodowanie UTF-8 dla znaków międzynarodowych
- Zachowanie typów danych: Zachowanie formatowania liczb, dat i tekstu
- Obliczanie wyników formuł: Oblicza wyniki formuł przed eksportem
- Obsługa dużych plików: Efektywne wykorzystanie pamięci w przypadku dużych arkuszy kalkulacyjnych
- Obsługa błędów: płynna obsługa plików uszkodzonych lub chronionych
W przypadku aplikacji wymagających wysokiej wydajności lub mających do czynienia z ograniczeniami rozmiaru plików, IronXL oferuje opcje optymalizacji. Możesz zintegrować te konwersje z automatycznymi procesami, usługami internetowymi lub aplikacjami komputerowymi.
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 przekonwertować XLSX na CSV w C# bez zainstalowanego Excela?
IronXL pozwala przekonwertować XLSX na CSV jednym wierszem kodu: IronXl.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv"). Działa to bez konieczności posiadania zainstalowanego Microsoft Excel albo Interopu w systemie.
Na jakie formaty plików mogę konwertować pliki Excel za pomocą C#?
IronXL wspiera konwersję plików Excel na wiele formatów, w tym CSV, JSON, XML, TSV i starsze formaty Excel takie jak XLS. Każdy format jest idealny do różnych zastosowań – CSV do importów do bazy danych, JSON do REST API, a XML do utrzymania hierarchicznych struktur danych.
Jak zainstalować bibliotekę do konwersji Excela dla C#?
Zainstaluj IronXL używając Menedżera Pakietów NuGet, wyszukując 'IronXl.Excel' lub przez Konsolę Menedżera Pakietów za pomocą komendy 'Install-Package IronXL'. Biblioteka wspiera .NET MAUI, Blazor i tradycyjne aplikacje .NET.
Czy mogę przekonwertować Excel na JSON do użycia z web API?
Tak, IronXL zapewnia wbudowaną konwersję z Excela do formatu JSON, co ułatwia integrację danych Excel z nowoczesnymi web API i usługami REST. Konwersja obsługuje automatycznie złożone struktury danych.
Czy konwersja Excela obsługuje specjalne znaki i formatowanie?
IronXL automatycznie radzi sobie ze specjalnymi znakami, komórkami wielowierszowymi oraz poprawnym mechanizmem wyjścia przy konwersji plików Excel na formaty jak CSV. Eliminuje to potrzebę ręcznego parsowania lub korekt formatowania.

