مقدمه
تبدیل دادهها از Excel به فرمت JSON در سیشارپ یکی از فرآیندهای متداول در برنامهنویسی است. این عملیات به شما امکان میدهد که دادههای ساختاریافته را از یک فایل Excel استخراج کرده و به فرمت JSON تبدیل کنید. این کار معمولاً با استفاده از کتابخانههای مختلفی انجام میشود که میتوانند با فرمتهای مختلف فایل کار کنند.
نیازمندیها
قبل از شروع، اطمینان حاصل کنید که بستههای زیر را در پروژه سیشارپ خود نصب کردهاید:
- EPPlus: برای خواندن فایلهای Excel.
- Newtonsoft.Json: برای تبدیل دادهها به JSON.
شما میتوانید این بستهها را از طریق NuGet Package Manager نصب کنید.
خواندن دادهها از Excel
برای شروع، باید فایل Excel را بخوانید. در اینجا یک مثال ساده برای انجام این کار آورده شده است:
```csharp
using OfficeOpenXml;
using System.Collections.Generic;
using System.IO;
public List<Dictionary<string, object>> ReadExcelFile(string filePath)
{
var data = new List<Dictionary<string, object>>();
using (var package = new ExcelPackage(new FileInfo(filePath)))
{
var worksheet = package.Workbook.Worksheets[0];
int rowCount = worksheet.Dimension.Rows;
int colCount = worksheet.Dimension.Columns;
for (int row = 2; row <= rowCount; row++) // assuming first row is header
{
var rowData = new Dictionary<string, object>();
for (int col = 1; col <= colCount; col++)
{
var header = worksheet.Cells[1, col].Text;
var value = worksheet.Cells[row, col].Value;
rowData[header] = value;
}
data.Add(rowData);
}
}
return data;
}
```
تبدیل دادهها به JSON
پس از استخراج دادهها، باید آنها را به فرمت JSON تبدیل کنید. در اینجا کد مربوط به این عملیات آورده شده است:
```csharp
using Newtonsoft.Json;
public string ConvertToJson(List<Dictionary<string, object>> data)
{
return JsonConvert.SerializeObject(data, Formatting.Indented);
}
```
ترکیب مراحل
حالا که دو مرحله اصلی را داریم، میتوانیم آنها را در یک تابع واحد ترکیب کنیم:
```csharp
public string ExcelToJson(string filePath)
{
var data = ReadExcelFile(filePath);
return ConvertToJson(data);
}
```
نتیجهگیری
تبدیل دادهها از Excel به JSON در سیشارپ به کمک کتابخانههای EPPlus و Newtonsoft.Json بسیار ساده است. شما میتوانید این روش را به عنوان پایهای برای پروژههای خود استفاده کنید و بر اساس نیازهای خاص خود آن را گسترش دهید. با استفاده از این تکنیک، میتوانید دادههای خود را به فرمتی تبدیل کنید که برای وبسرویسها و APIها مناسب باشد.