如何使用IronXL在C#中轉換試算表文件型別
IronXL使C#開發人員能夠通過簡單的SaveAs方法,大量地在多種格式之間轉換試算表,包括XLS、XLSX、CSV、JSON、XML和HTML,從而簡化商業應用中的文件格式轉換。
IronXL支持不同格式之間的試算表文件轉換,包括XLS、XLSX、XLSM、XLTX、CSV、TSV、JSON、XML和HTML。 它還支持內聯程式碼資料型別,如HTML字串、二進制資料、字節陣列、MemoryStream。 SaveAs方法用於將試算表匯出到所需的文件型別。
這種靈活性使IronXL成為.NET開發人員在不同平台和應用上使用C#的Excel文件的重要工具。 不論您是建構資料遷移工具、報告系統或商業智能應用,能無縫地在格式之間轉換的能力確保了與各種系統和使用者需求的相容性。
快速入門:將Excel試算表轉換為JSON
通過一行簡單的程式碼,IronXL可以讓您載入Excel文件並將其匯出為JSON,無需複雜配置,只需快速結果。 這是一個為需要快速文件型別轉換的開發人員提供的完美入門範例。
最小化工作流程(5步)
- 安裝C#庫以將Excel文件轉換為其他文件格式
- 使用`WorkBook`類來載入或建立新的XLS或XLSX
- 使用C#查看、新增或修改Excel試算表中的資料
- 利用`WorkBook`類中的方法來匯出試算表
- 在指定目錄中檢查匯出的文件
我如何轉換試算表文件型別?
轉換試算表型別的過程涉及載入文件一種支持的格式,並使用IronXL的智能資料重構功能匯出到另一種格式。 此轉換過程會在適應每個目標格式的結構要求的同時保留資料的完整性。
雖然可使用SaveAs方法匯出為CSV、JSON、XML和HTML,但建議對每種文件格式使用專用方法:
SaveAsCsv- 針對逗號分隔值進行優化,具有適當的轉義SaveAsJson- 建立格式正確的JSON,保留資料型別SaveAsXml- 生成格式良好的XML,具備適當的結構ExportToHtml- 生成帶有樣式保留的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:為網路服務、REST API和現代JavaScript應用提供理想選擇
- XML:適合作為結構化資料交換、配置文件以及與舊系統整合
- HTML:完美用於在網站上顯示資料或生成電子郵件分發的報告
有哪些高級轉換選項可用?
在上一節中,我們探討了最常見的轉換文件格式。 然而,IronXL有能力將試算表轉換為更多格式。 探索用於載入和匯出試算表的所有可用選項,包括高級方案如匯出到DataSet和DataTable以進行資料庫操作。
哪些文件格式可以載入?
- XLS、XLSX、XLSM和XLTX
- CSV(逗號分隔值)
- TSV(製表符分隔值)
我可以匯出到哪些格式?
- XLS、XLSX和XLSM
- CSV 和 TSV
- JSON
- XML
- HTML
-
內聯程式碼資料型別:
- HTML字串
- 二進制和字節陣列
System.Data.DataTable物件,允許與DataGrids、SQL和EF的輕鬆互通或整合。MemoryStream
內聯程式碼資料型別可以作為RESTful API響應發送或與IronPDF一起使用將其轉換為PDF文件。 這種靈活性在動態建立網路應用中的試算表時尤為有用。
: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文件,然後將其轉換並匯出為幾種格式。 欲了解文件轉換的綜合範例,請存取我們的轉換範例頁面。
轉換後的輸出結果是什麼樣的?
下面顯示了各種匯出的文件。
文件轉換的最佳實踐
在轉換試算表文件時,考慮以下最佳實踐,以確保獲得最佳結果:
-
保持資料完整性:始終驗證關鍵資料、公式和格式在轉換後得到維護。 有些格式如CSV不支持多個工作表或格式設定。
-
有效處理大文件:對於大型試算表,考慮使用流方法或分塊處理資料,以有效管理記憶體使用。
- 錯誤處理:實施適當的錯誤處理,以檢測轉換失敗:
:path=/static-assets/excel/content-code-examples/how-to/convert-spreadsheet-file-types-4.cs
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
-
選擇合適的格式:根據您的具體需求選擇輸出格式:
- 使用
XLSX獲得完整的Excel功能 - 選擇
CSV進行簡單的資料交換 - 選擇
JSON作為網頁應用和API - 選擇
XML以獲得帶有架構的結構化資料 - 匯出到
HTML以用於網頁顯示
- 使用
- 字元編碼:特別是處理國際資料時,要注意字元編碼。 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會為每個工作表建立單獨的JSON文件,遵循命名約定fileName.sheetName.json,保留每個工作表的資料型別和結構。
支持哪些電子表格文件格式進行轉換?
IronXL支持包括XLS、XLSX、XLSM、XLTX、CSV、TSV、JSON、XML和HTML在內的多種格式之間的轉換。此外,它還支持內聯程式碼資料型別,如HTML字串、二進制資料、字節陣列、DataSets和MemoryStreams,以實現您的C#應用程式的最大靈活性。
如何在轉換為HTML時保留Excel格式?
在將Excel轉換為HTML時,請使用IronXL的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。

