如何使用IronXL在 C# 中轉換電子表格檔案類型
IronXL讓 C# 開發人員能夠使用簡單的 Load 和 SaveAs 方法在多種格式(包括 XLS、XLSX、CSV、JSON、XML 和 HTML)之間轉換電子表格,進行完整的XLSX檔案操作,從而簡化業務應用程式中的檔案格式轉換。
IronXL支援在多種格式之間轉換電子表格文件,包括 XLS、XLSX、XLSM、XLTX、CSV、TSV、JSON、XML 和 HTML。 它還支援內聯代碼資料類型,例如 HTML 字串、二進位資料、位元組數組、資料集和記憶體流。 Load 方法用於讀取Excel檔案,而 SaveAs 方法用於將電子表格匯出為所需的文件類型。
IronXL 的這種靈活性使其成為.NET開發人員在不同平台和應用程式中使用C# 處理 Excel 檔案時必不可少的工具。 無論您是建立資料遷移工具、報告系統還是商業智慧應用程序,無縫轉換格式的能力都能確保與各種系統和使用者要求相容。
快速入門:將 Excel 電子表格轉換為 JSON
IronXL只需一行簡單的程式碼,即可載入 Excel 檔案並將其匯出為 JSON 格式——無需複雜的配置,即可快速獲得結果。 對於需要快速進行文件類型轉換的開發人員來說,這是一個完美的入門範例。
- 安裝用於將 Excel 檔案轉換為其他檔案格式的 C# 庫
- Use the `WorkBook` class to load or create new XLS or XLSX
- 使用 C# 檢視、新增或修改 Excel 電子表格中的數據
- Utilize the methods in the `WorkBook` class to export the spreadsheet
- 檢查指定目錄中匯出的檔案。
如何轉換電子表格文件類型?
轉換電子表格類型的過程包括以一種支援格式載入文件,然後使用 IronXL 的智慧型資料重組功能將其匯出為另一種格式。 此轉換過程在保持資料完整性的同時,也能適應每種目標格式的結構要求。
雖然可以使用 SaveAs 方法匯出為 CSV、JSON、XML 和 HTML 格式,但建議使用每種檔案格式的專用方法:
SaveAsCsv- 針對逗號分隔值進行了最佳化,並進行了正確的轉義SaveAsJson- 建立格式正確的 JSON 並保留資料類型SaveAsXml- 產生具有適當模式的格式良好的 XMLExportToHtml- 產生保留格式的樣式化 HTML 表格
fileName.sheetName.format 的格式。 在下面的範例中,CSV 格式的輸出將是 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
每種匯出方法都針對其目標格式進行了最佳化。 例如,將 XLSX 轉換為 CSV可以正確處理特殊字元和分隔符,而 JSON 匯出可以保持資料類型和層次結構。
我應該在什麼情況下使用哪種格式?
了解何時使用每種文件格式對於商業應用至關重要:
- CSV/TSV :最適合簡單的表格資料、資料庫匯入,或當您需要與其他應用程式保持最大相容性時。
JSON :非常適合 Web 服務、REST API 和現代JavaScript應用程式
XML :適用於結構化資料交換、設定檔和遺留系統集成 - HTML :非常適合在網站上顯示資料或產生用於電子郵件分發的報告
有哪些進階轉換選項?
在上一節中,我們探討了最常見的轉換檔案格式。 但是, IronXL能夠將電子表格轉換為更多格式。 探索所有可用的電子表格載入和匯出選項,包括匯出到 DataSet 和 DataTable等進階場景,以便進行資料庫操作。
我可以載入哪些文件格式?
- XLS、XLSX、XLSM 和 XLTX
- CSV(逗號分隔值)
- TSV(製表符分隔值)
我可以匯出為哪些格式?
- XLS、XLSX 和 XLSM
- CSV 和 TSV
- JSON
- XML
- HTML
-
內聯代碼資料型態:
- HTML字串
- 二進位和位元組數組
- 資料集:將 Excel 匯出為
System.Data.DataSet和System.Data.DataTable對象,可輕鬆與 DataGrids、SQL 和 EF 進行互通或整合。 - MemoryStream
內聯代碼資料類型可以作為 RESTful API 回應傳送,也可以與IronPDF一起使用,將其轉換為 PDF 文件。 這種靈活性在 Web 應用程式中動態建立電子表格時尤其有用。
: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()
上面的程式碼載入一個普通的 XLSX 文件,然後將其轉換並匯出為多種格式。 有關文件轉換的完整範例,請造訪我們的轉換範例頁面。
轉換後的輸出結果是什麼樣子的?
下面列出了匯出的各種文件。
文件轉換最佳實踐
轉換電子表格文件時,請遵循以下最佳實踐,以確保最佳結果:
1.保持資料完整性:轉換後務必驗證關鍵資料、公式和格式是否已保留。 某些格式(例如 CSV)不支援多工作表或格式設定。
2.高效處理大型檔案:對於大型電子表格,考慮使用串流方法或分塊處理數據,以有效管理記憶體使用情況。
3.錯誤處理:實現適當的錯誤處理以捕獲轉換失敗:
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
4.選擇合適的格式:根據您的特定需求選擇輸出格式:
- 使用
XLSX可實現完整的 Excel 功能
選擇CSV進行簡單的資料交換 - 選擇
JSON用於 Web 應用程式和 API - 選擇
XML用於具有模式的結構化數據 - 匯出為
HTML用於網頁顯示
5.字元編碼:注意字元編碼,尤其是在處理國際資料時。 IronXL預設處理 UTF-8 編碼,確保在不同系統上正確表示字元。
有關在.NET應用程式中使用 Excel 檔案的更詳細指導,請參閱IronXL 的綜合文件。
常見問題解答
如何在 C# 中將 Excel 檔案轉換為 CSV 格式?
使用 IronXL,您可以使用 SaveAsCsv 方法將 Excel 檔案轉換為 CSV。只需使用 WorkBook.Load() 載入 Excel 檔案,然後調用 SaveAsCsv() 將其匯出即可。IronXL 會自動處理適當的轉義與格式化,為 Excel 檔案中的每個工作表建立單獨的 CSV 檔案。
我可以同時將多個 Excel 工作表轉換為 JSON 嗎?
是的,IronXL 在匯出為 JSON 格式時會自動轉換所有工作表。當您使用 SaveAsJson 方法時,IronXL 會依據命名慣例 fileName.sheetName.json 為每個工作表建立獨立的 JSON 檔案,保留每個工作表的資料類型和結構。
轉換時支援哪些試算表檔案格式?
IronXL 支援多種格式之間的轉換,包括 XLS、XLSX、XLSM、XLTX、CSV、TSV、JSON、XML 和 HTML。此外,它還支援 HTML 字串、二進位資料、位元組陣列、DataSets 和 MemoryStreams 等內嵌程式碼資料類型,讓您的 C# 應用程式擁有最大的彈性。
轉換為 HTML 時,如何保留 Excel 格式?
將 Excel 轉換為 HTML 時,請使用 IronXL.Excel 的 ExportToHtml 方法,而非一般的 SaveAs。此專用方法可產生保留原始 Excel 檔格式的 HTML 表格樣式,確保您的資料呈現在不同格式下保持一致。
沒有安裝 Microsoft Office 是否可以轉換 Excel 檔案?
是的,IronXL 可獨立運作,無需 Microsoft Office 或 Excel Interop。它提供了一個獨立的 C# 轉換 Excel 檔案的解決方案,非常適合伺服器環境和無法安裝 Office 的應用程式。
將 Excel 檔案轉換為其他格式的最簡單方法是什麼?
使用 IronXL 最簡單的方法是使用一行代碼:IronXL.WorkBook.Load("input.xlsx").SaveAsJson("output.json").這會載入您的 Excel 檔案,並立即將其匯出為您所需的格式 - 根據需要將 SaveAsJson 改為 SaveAsCsv、SaveAsXml 或 ExportToHtml。

