Jak konwertować typy plików arkuszy kalkulacyjnych w języku C# za pomocą IronXL
IronXL umożliwia programistom C# konwersję arkuszy kalkulacyjnych między wieloma formatami, w tym XLS, XLSX, CSV, JSON, XML i HTML, przy użyciu prostych metod Load i SaveAs, usprawniając transformacje formatów plików w aplikacjach biznesowych.
IronXL obsługuje konwersję plików arkuszy kalkulacyjnych między różnymi formatami, w tym XLS, XLSX, XLSM, XLTX, CSV, TSV, JSON, XML i HTML. Obsługuje również typy danych kodu wbudowanego, takie jak ciągi HTML, dane binarne, tablice bajtów, DataSets i MemoryStreams. Metoda Load służy do otwierania pliku arkusza kalkulacyjnego, a metoda SaveAs służy do eksportowania arkusza kalkulacyjnego do wybranego typu pliku.
Ta elastyczność sprawia, że IronXL jest niezbędnym narzędziem dla programistów .NET pracujących z plikami Excel w języku C# na różnych platformach i w różnych aplikacjach. Niezależnie od tego, czy tworzysz narzędzia do migracji danych, systemy raportowania czy aplikacje do analizy biznesowej, możliwość płynnej konwersji między formatami zapewnia zgodność z różnymi systemami i wymaganiami użytkowników.
Szybki start: Konwersja arkusza kalkulacyjnego Excel do formatu JSON
Za pomocą jednej prostej linii kodu IronXL pozwala załadować plik Excel i wyeksportować go jako JSON — bez skomplikówanej konfiguracji, tylko szybkie wyniki. To idealny przykład na początek dla programistów potrzebujących szybkiej konwersji typów plików.
-
Install IronXL with NuGet Package Manager
PM > Install-Package IronXL.Excel -
Skopiuj i uruchom ten fragment kodu.
IronXl.WorkBook.Load("input.xlsx").SaveAsJson("output.json"); -
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)
- Zainstaluj bibliotekę C# do konwersji plików Excel na inne formaty plików
- Use the ``WorkBook`` class to load or create new XLS or XLSX
- Wyświetlanie, dodawanie lub modyfikowanie danych w arkuszu kalkulacyjnym Excel przy użyciu języka C#
- Utilize the methods in the ``WorkBook`` class to export the spreadsheet
- Sprawdź wyeksportowany plik w podanym katalogu
Jak konwertować typy plików arkuszy kalkulacyjnych?
Proces konwersji typów arkuszy kalkulacyjnych polega na załadowaniu pliku w jednym z obsługiwanych formatów i wyeksportowaniu go do innego formatu przy użyciu inteligentnych funkcji restrukturyzacji danych IronXL. Ten proces konwersji zachowuje integralność danych, dostosowując się jednocześnie do wymagań strukturalnych każdego formatu docelowego.
Chociaż metoda `` może służyć do eksportu do formatów CSV, JSON, XML i HTML, zaleca się stosowanie metod dedykowanych dla każdego formatu pliku:
- `` - Zoptymalizowane pod kątem wartości rozdzielanych przecinkami z odpowiednim escapowaniem
- `` - Tworzy poprawnie sformatowany plik JSON z zachowaniem typów danych
- `` - Generuje poprawnie sformułowany kod XML z odpowiednim schematem
- `` - Tworzy stylizowane tabele HTML z zachowaniem formatowania
fileName.sheetName.format. W poniższym przykładzie wynik dla formatu CSV wyglądałby następująco: sample.new_sheet.csv.:path=/static-assets/excel/content-code-examples/how-to/convert-spreadsheet-file-types-different-format.cs
using IronXL;
// Load the Excel spreadsheet
WorkBook workbook = WorkBook.Load("sample.xlsx");
// Convert and save as CSV
workbook.SaveAsCsv("sample.csv");
// Convert and save as JSON
workbook.SaveAsJson("sample.json");
// Convert and save as XML
workbook.SaveAsXml("sample.xml");
// Convert and export to HTML
workbook.ExportToHtml("sample.html");
// The files will be saved in the project's directory with the specified formats
Imports IronXL
' Load the Excel spreadsheet
Dim workbook As WorkBook = WorkBook.Load("sample.xlsx")
' Convert and save as CSV
workbook.SaveAsCsv("sample.csv")
' Convert and save as JSON
workbook.SaveAsJson("sample.json")
' Convert and save as XML
workbook.SaveAsXml("sample.xml")
' Convert and export to HTML
workbook.ExportToHtml("sample.html")
' The files will be saved in the project's directory with the specified formats
Każda metoda eksportu jest zoptymalizowana pod kątem docelowego formatu. Na przykład konwersja plików XLSX do formatu CSV prawidłowo obsługuje znaki specjalne i separatory, a eksport do formatu JSON zachowuje typy danych i struktury hierarchiczne.
Kiedy należy używać poszczególnych formatów?
Zrozumienie, kiedy należy używać poszczególnych formatów plików, ma kluczowe znaczenie dla aplikacji biznesowych:
- CSV/TSV: Najlepsze do prostych danych tabelarycznych, importow baz danych lub gdy potrzeba maksymalnej zgodnosci z innymi aplikacjami
- JSON: Idealne dla uslug sieciowych, REST API i nowoczesnych aplikacji JavaScript
- XML: Nadaje sie do wymiany danych strukturalnych, plikow konfiguracyjnych i integracji z systemami legacy
- HTML: Idealny do wyświetlania danych na stronach internetowych lub generowania raportów do dystrybucji pocztą elektroniczną
Jakie zaawansowane opcje konwersji są dostępne?
W poprzedniej sekcji omówiliśmy najpopularniejsze formaty plików do konwersji. Jednak IronXL ma możliwość konwersji arkuszy kalkulacyjnych do wielu innych formatów. Poznaj wszystkie dostępne opcje ładowania i eksportowania arkuszy kalkulacyjnych, w tym zaawansowane scenariusze, takie jak eksport do DataSet i DataTable w celu operacji na bazie danych.
Jakie formaty plików mogę wczytać?
- XLS, XLSX, XLSM, i XLTX
- CSV (wartości rozdzielone przecinkami)
- TSV (wartości rozdzielone tabulatorami)
Do jakich formatów mogę eksportować?
- XLS, XLSX, i XLSM
- CSV i TSV
- JSON
- XML
- HTML
-
Typy danych w kodzie wbudowanym:
- Ciąg HTML
- Dane binarne i tablice bajtow
DataSet: Eksportowanie plików Excel do obiektówSystem.Data.DataSetiSystem.Data.DataTableumożliwia łatwą interoperacyjność lub integrację z DataGrids, SQL i EF.MemoryStream
Typy danych kodu wbudowanego mogą być wysyłane jako odpowiedź RESTful API lub używane z IronPDF w celu konwersji ich do dokumentu PDF. Ta elastyczność jest szczególnie przydatna podczas dynamicznego tworzenia arkuszy kalkulacyjnych w aplikacjach internetowych.
:path=/static-assets/excel/content-code-examples/how-to/convert-spreadsheet-file-types-different-format-advanced.cs
using IronXL;
// Load the Excel spreadsheet
WorkBook workbook = WorkBook.Load("advanced_sample.xlsx");
// Convert and save to various formats
workbook.SaveAs("advanced_sample.xlsm");
workbook.SaveAsCsv("advanced_sample.csv");
workbook.SaveAsJson("advanced_sample.json");
workbook.SaveAsXml("advanced_sample.xml");
workbook.ExportToHtml("advanced_sample.html");
// You can also convert to binary or byte array for advanced uses
byte[] excelAsByteArray = workbook.ToBinary();
Imports IronXL
' Load the Excel spreadsheet
Dim workbook As WorkBook = WorkBook.Load("advanced_sample.xlsx")
' Convert and save to various formats
workbook.SaveAs("advanced_sample.xlsm")
workbook.SaveAsCsv("advanced_sample.csv")
workbook.SaveAsJson("advanced_sample.json")
workbook.SaveAsXml("advanced_sample.xml")
workbook.ExportToHtml("advanced_sample.html")
' You can also convert to binary or byte array for advanced uses
Dim excelAsByteArray As Byte() = workbook.ToBinary()
Powyższy kod ładuje zwykły plik XLSX, a następnie konwertuje go i eksportuje do kilku formatów. Aby zapoznać się z obszernymi przykładami konwersji plików, odwiedź naszą stronę z przykładami konwersji.
Jak wygląda przetworzony wynik?
Poniżej przedstawiono różne wyeksportowane pliki.
Najlepsze praktyki dotyczące konwersji plików
Podczas konwersji plików arkuszy kalkulacyjnych należy wziąć pod uwagę poniższe najlepsze praktyki, aby zapewnić optymalne wyniki:
-
Zachowanie integralności danych: Należy zawsze sprawdzić, czy po konwersji zachowane zostały kluczowe dane, formuły i formatowanie. Niektóre formaty, takie jak CSV, nie obsługują wielu arkuszy ani formatowania.
-
Efektywne przetwarzanie dużych plików: W przypadku dużych arkuszy kalkulacyjnych warto rozważyć zastosowanie metod strumieniowych lub przetwarzanie danych w partiach, aby efektywnie zarządzać wykorzystaniem pamięci.
- Obsługa błędów: Wprowadź odpowiednią obsługę błędów, aby wychwycić niepowodzenia konwersji:
try
{
WorkBook workbook = WorkBook.Load("input.xlsx");
// Check if the file has data before converting
if (workbook.WorkSheets.Count > 0 && workbook.DefaultWorkSheet.RowCount > 0)
{
workbook.SaveAsCsv("output.csv");
Console.WriteLine("Conversion successful!");
}
else
{
Console.WriteLine("No data found in the spreadsheet.");
}
}
catch (Exception ex)
{
Console.WriteLine($"Conversion failed: {ex.Message}");
}
try
{
WorkBook workbook = WorkBook.Load("input.xlsx");
// Check if the file has data before converting
if (workbook.WorkSheets.Count > 0 && workbook.DefaultWorkSheet.RowCount > 0)
{
workbook.SaveAsCsv("output.csv");
Console.WriteLine("Conversion successful!");
}
else
{
Console.WriteLine("No data found in the spreadsheet.");
}
}
catch (Exception ex)
{
Console.WriteLine($"Conversion failed: {ex.Message}");
}
Imports System
Try
Dim workbook As WorkBook = WorkBook.Load("input.xlsx")
' Check if the file has data before converting
If workbook.WorkSheets.Count > 0 AndAlso workbook.DefaultWorkSheet.RowCount > 0 Then
workbook.SaveAsCsv("output.csv")
Console.WriteLine("Conversion successful!")
Else
Console.WriteLine("No data found in the spreadsheet.")
End If
Catch ex As Exception
Console.WriteLine($"Conversion failed: {ex.Message}")
End Try
-
Wybierz odpowiedni format: Wybierz format wyjściowy w oparciu o swoje konkretne potrzeby:
- Użyj ``, aby uzyskać pełną funkcjonalność programu Excel
- Wybierz `` do prostej wymiany danych
- Wybierz `` dla aplikacji internetowych i interfejsów API
- Wybierz `` dla danych strukturalnych ze schematami
- Eksportuj do `` w celu wyświetlenia w sieci
- Kodowanie znaków: Należy zwrócić uwagę na kodowanie znaków, zwłaszcza w przypadku danych międzynarodowych. IronXL domyślnie obsługuje kodowanie ``, zapewniając prawidłowe wyświetlanie znaków w różnych systemach.
Aby uzyskać bardziej szczegółowe wskazówki dotyczące pracy z plikami Excel w aplikacjach .NET, zapoznaj się z obszerną dokumentacją IronXL.
Często Zadawane Pytania
Jak przekonwertować pliki Excel do formatu CSV w C#?
Z IronXL można konwertować pliki Excel do CSV za pomocą metody SaveAsCsv. Wystarczy wczytać plik Excel za pomocą WorkBook.Load() i następnie wywołać SaveAsCsv(), aby go wyeksportować. IronXL automatycznie obsługuje właściwe znakowanie i formatowanie, tworząc osobny plik CSV dla każdego arkusza w pliku Excel.
Czy mogę jednocześnie przekonwertować wiele arkuszy Excel na JSON?
Tak, IronXL automatycznie konwertuje wszystkie arkusze podczas eksportu do formatu JSON. Kiedy używasz metody SaveAsJson, IronXL tworzy osobne pliki JSON dla każdego arkusza, stosując konwencję nazewniczą fileName.sheetName.json, zachowując typy danych i strukturę z każdego arkusza.
Jakie formaty plików arkuszy kalkulacyjnych są obsługiwane do konwersji?
IronXL obsługuje konwersję między wieloma formatami, w tym XLS, XLSX, XLSM, XLTX, CSV, TSV, JSON, XML i HTML. Dodatkowo obsługuje dane kodowe inline, takie jak ciągi HTML, dane binarne, tablice bajtów, DataSets i MemoryStreams, zapewniając maksymalną elastyczność w aplikacjach C#.
Jak mogę zachować formatowanie Excel podczas konwersji do HTML?
Podczas konwersji Excel do HTML użyj metody ExportToHtml IronXL zamiast ogólnej SaveAs. Ta dedykowana metoda tworzy stylizowane tabele HTML, które zachowują formatowanie z oryginalnego pliku Excel, zapewniając spójność prezentacji danych w różnych formatach.
Czy można konwertować pliki Excel bez zainstalowanego Microsoft Office?
Tak, IronXL działa niezależnie, nie wymagając Microsoft Office ani Excel Interop. Zapewnia samodzielne rozwiązanie do konwersji plików Excel w C#, co czyni go idealnym dla środowisk serwerowych i aplikacji, gdzie instalacja Office nie jest możliwa.
Jaki jest najprostszy sposób na przekonwertowanie pliku Excel na inny format?
Najprostsze podejście z IronXL to użycie jednej linii kodu: IronXl.WorkBook.Load("input.xlsx").SaveAsJson("output.json"). Ładuje to plik Excel i natychmiast eksportuje do żądanego formatu - zamień SaveAsJson na SaveAsCsv, SaveAsXml lub ExportToHtml według potrzeb.

