如何在 C# 中將 XLSX 轉換為 CSV、JSON、XML 等格式
IronXL使用簡單的單行命令完成XLSX檔案操作,將 Excel 檔案轉換為多種格式,包括 JSON、CSV、XML 和較舊的 Excel 格式(如 XLS),無需手動解析。
IronXL可以將任何 Excel 檔案轉換為各種格式,為開發人員提供在 C# 中處理 Excel 而無需 Interop 的工具。 無論是系統間資料遷移、為 Web 應用程式建立資料匯出,或是與舊系統集成, IronXL都能簡化轉換過程。
這些格式包括:用於現代 Web API 的 JSON、用於資料交換的 CSV、用於結構化資料儲存的 XML,以及用於向後相容的舊式 Excel 格式(如 XLS)。 每種格式都有其特定的使用場景-CSV 適用於資料庫導入,JSON 可與 REST API 集成,而 XML 可維護分層資料關係。
本文示範如何使用IronXL將 Excel 工作表轉換為 XML、CSV、JSON 格式,並將其匯出為資料集,以便與.NET資料控制項直接整合。
快速入門:一行程式碼即可將 XLSX 檔案轉換為 CSV
此範例展示了IronXL如何一行程式碼將現有的 Excel 工作簿轉換為 CSV 檔案。載入您的工作簿並直接將其另存為 CSV 檔案即可立即開始。
- 下載 C# 庫,用於將 XLSX 轉換為 CSV
- 載入現有的 XLSX Excel 電子表格
- 訪問或修改工作簿
- 匯出為 CSV 檔案或其他多種格式,包括 JSON、TSV 和 XML。
- 檢查輸出檔並進行後續處理
步驟 1
如何安裝IronXL庫?
首先,請先安裝IronXL,然後再將其用於您的應用程式中。 IronXL支援.NET MAUI 、 Blazor和傳統的.NET應用程式。 可使用下列任一安裝方法:
下載網址: https://ironsoftware.com/csharp/excel/docs/
或使用NuGet套件管理器:
在解決方案資源管理器中,以滑鼠右鍵按一下解決方案名稱。
- 點選"管理NuGet套件" *瀏覽IronXL.Excel
- 安裝
Install-Package IronXL.Excel
操作指南
如何將Excel檔案轉換為不同格式?
IronXL提供轉換功能,可自動處理複雜的解析和格式化。
新增以下程式碼:
: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()
上面的程式碼載入一個 XLSX 文件,新增標題,然後將其轉換為幾種格式。 轉換為 CSV 時, IronXL可以處理特殊字元、多行儲存格和正確的轉義。 對於 JSON 匯出,它會建立電子表格資料的結構化物件表示。 XML轉換會保留儲存格格式和資料類型。最後,它會將工作表匯出為DataSet,以便與DataGridView物件一起使用,這在處理DataTables時效果很好。
以下是另一個範例,展示如何使用自訂選項轉換特定工作表:
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")
對於進階應用場景,您可以同時匯出為多種格式或高效處理大型檔案:
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
下面顯示的是匯出的各種文件。
在現代應用中,每種轉換格式都有不同的用途。 CSV 檔案非常適合將資料匯入資料庫或資料分析工具。 JSON 格式適用於 Web API 和JavaScript應用程式。 XML 維護資料結構,常用於企業系統。 傳統的 XLS 格式可確保與舊版 Excel 和需要向後相容的系統相容。
在處理這些轉換時, IronXL會自動處理許多複雜情況: -字符編碼:國際字符採用正確的 UTF-8 編碼 -資料類型保留:保持數字、日期和文字格式 -公式求值:導出前計算公式結果 -大型檔案處理:高效利用記憶體處理大型電子表格 -錯誤處理:優雅地處理損壞或受保護的文件
對於需要高效能或處理檔案大小限制的應用, IronXL提供最佳化選項。 您可以將這些轉換整合到自動化工作流程、Web 服務或桌面應用程式中。
圖書館快速訪問
使用便利的IronXL API 參考文檔,了解更多內容並分享如何在 Excel 電子表格中合併、取消合併和處理儲存格。
IronXL API 參考文檔常見問題解答
如何在未安裝 Excel 的情況下,以 C# 將 XLSX 轉換為 CSV?
IronXL 讓您只需一行程式碼即可將 XLSX 轉換成 CSV:IronXL.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv").此功能無需在您的系統上安裝 Microsoft Excel 或 Interop。
使用 C# 可以將 Excel 檔案轉換成哪些檔案格式?
IronXL.Excel 支援將 Excel 檔案轉換為多種格式,包括 CSV、JSON、XML、TSV 以及較舊的 Excel 格式 (如 XLS)。每種格式都適用於不同的使用情況 - CSV 適用於資料庫匯入,JSON 適用於 REST API,而 XML 則適用於維護階層式資料結構。
如何安裝 C# 的 Excel 轉換函式庫?
使用 NuGet 套件管理員搜尋「IronXL.Excel」或透過套件管理員控制台使用「Install-Package IronXL」指令安裝 IronXL。該函式庫支援 .NET MAUI、Blazor 以及傳統的 .NET 應用程式。
我可以將 Excel 轉換為 JSON 以便與 Web API 搭配使用嗎?
是的,IronXL.Excel 提供從 Excel 到 JSON 格式的內建轉換,可輕鬆將 Excel 資料與現代 Web API 和 REST 服務整合。轉換會自動處理複雜的資料結構。
Excel 轉換會處理特殊字符和格式嗎?
IronXL.Excel 在將 Excel 檔案轉換為 CSV 等格式時,會自動處理特殊字符、多行儲存格和適當的轉義。這樣就不需要手動解析或格式修正。

