如何在C#中將XLSX轉換為CSV、JSON、XML等格式
IronXL 將Excel文件轉換為多種格式,包括JSON、CSV、XML和較舊的Excel格式如XLS,使用簡單的單行命令來消除手動解析。
IronXL 將任何Excel文件轉換為多種格式,提供開發者在C#中處理Excel的工具而不使用Interop。 無論是資料在系統之間遷移、建立Web應用程式的資料匯出,還是與遺留系統整合,IronXL 簡化了轉換過程。
這些格式包括:現代Web APIs的JSON、資料交換的CSV、結構化資料儲存的XML,及用於向後相容的舊版Excel格式如XLS。 每種格式滿足特定的使用案例—CSV適合於資料庫導入,JSON與REST APIs整合,而XML則維持層次資料關係。
本文展示了如何使用IronXL轉換為XML、CSV、JSON,並將Excel工作表匯出為資料集,供.NET資料控制項直接整合。
此範例顯示IronXL如何在一行中將現有的Excel工作簿轉換為CSV文件。載入您的工作簿並直接儲存為CSV以立即開始。
-
1Install IronXL with NuGet Package Manager
-
2複製並運行這段程式碼片段。
IronXL.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv");C# -
3部署以在您的實時環境中測試
今天就開始在您的專案中使用IronXL,透過免費試用
最小化工作流程(5步)
- 下載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 - 安裝
教程
如何將Excel文件轉換為不同格式?
IronXL 提供自動處理複雜解析和格式化的轉換能力。
加入以下程式碼:
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轉換保留單元格格式和資料型別。最後,它將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
sheet.SaveAsJson("SalesData.json");
// Convert to XML
sheet.SaveAsXml("SalesData.xml");
對於高級場景,您可以同時匯出為多種格式或有效處理大文件:
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 APIs和JavaScript應用程式。 XML維持資料結構,通常用於企業系統。 舊版XLS格式確保與舊版Excel版本的相容性和需要向後相容的系統。
使用這些轉換的過程中,IronXL自動處理許多複雜性:
- 字元編碼:國際字元的正確UTF-8編碼
- 資料型別保留:維持數字、日期和文字格式
- 公式計算:在匯出前計算公式結果
- 大文件處理:大電子表格的高效記憶體使用
- 錯誤處理:優雅地處理損壞或受保護的文件
對於需要高性能或處理文件大小限制的應用程式,IronXL提供優化選項。 您可以將這些轉換整合到自動化工作流、Web服務或桌面應用程式中。
程式庫快捷存取
常見問題
如何在沒有安裝 Excel 的情況下在 C# 中將 XLSX 轉換為 CSV?
IronXL 允許您使用一行程式碼將 XLSX 轉換為 CSV:IronXL.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv")。這是在您的系統上無需安裝 Microsoft Excel 或 Interop 的情況下運行的。
我可以使用 C# 將 Excel 文件轉換為哪些文件格式?
IronXL 支援將 Excel 文件轉換為多種格式,包括 CSV、JSON、XML、TSV 和較舊的 Excel 格式如 XLS。每種格式對不同的使用案例都很理想——CSV 用於資料庫匯入,JSON 用於 REST API,XML 用於維護階層式的資料結構。
我如何安裝 C# 的 Excel 轉換程式庫?
using NuGet 套件管理器搜尋 'IronXL.Excel' 安裝 IronXL,或在套件管理器主控台下輸入命令 'Install-Package IronXL'。該程式庫支援 .NET MAUI、Blazor 和傳統的 .NET 應用。
我可以為用於網頁 API 的 JSON 格式轉換 Excel 嗎?
是的,IronXL 提供內建的 Excel 至 JSON 格式轉換,使整合 Excel 資料與現代網頁 API 和 REST 服務變得容易。轉換會自動處理複雜的資料結構。
Excel 轉換是否處理特殊字元和格式?
IronXL 自動處理特殊字元、多行儲存格,以及在將 Excel 文件轉換為 CSV 格式時的正確逃脫,這消除了手動解析或格式修正的需要。
How does IronXL handle formula evaluation in Excel files?
IronXL can evaluate formulas in Excel files before export, ensuring that the final output includes computed values rather than the formula text.
What are the advantages of using JSON format with IronXL?
The JSON format is advantageous for its integration with web APIs and JavaScript applications. IronXL enables conversion of Excel data to JSON, preserving the structured data representation.
How does IronXL ensure compatibility with older Excel versions?
IronXL can export Excel files to the legacy XLS format, maintaining backward compatibility for applications and systems that require older Excel file support.
Can IronXL be used for automated workflows involving Excel file conversions?
Yes, IronXL supports integration into automated workflows and web services, providing efficient and comprehensive conversion solutions for diverse applications.
Does IronXL support large file handling during Excel conversions?
IronXL is optimized for large files, using efficient memory management to process big spreadsheets during conversions while maintaining performance.

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。




