MS Excel ویژگی های مختلفی را برای نگهداری و سازماندهی داده های جدولی در قالب کاربرگ ها فراهم می کند. در کنار سازماندهی داده ها، می توانید عملیات مختلفی مانند مرتب سازی داده ها، ترسیم نمودار، محاسبات ریاضی و غیره را انجام دهید. جفت های کلید-مقدار اغلب برای انتقال داده ها از سرور به صفحات وب استفاده می شود. ممکن است زمانی وجود داشته باشد که داده ها را به شکل JSON، یعنی از یک سرویس وب، دریافت کنید و بخواهید آن را در یک کاربرگ اکسل ذخیره کنید. در چنین حالتی، راه بهینه، خودکار کردن فرآیند با وارد کردن دادهها از JSON به کاربرگهای اکسل به صورت برنامهنویسی است.
برای مقابله با سناریوی فوق در ASP.NET یا هر برنامه مبتنی بر C#، من به شما نشان خواهم داد که چگونه داده های JSON را به فایل اکسل وارد کنید. در این مقاله یاد خواهید گرفت که چگونه:
- وارد کردن داده ها از JSON به کاربرگ اکسل در سی شارپ
- هنگام تبدیل JSON به Excel در سی شارپ از قالب بندی سلول استفاده کنید.
برای وارد کردن دادهها از فایلهای JSON، از قابلیتهای Aspose.Cells برای .NET استفاده میکنیم. این یک API قدرتمند برای دستکاری فایل های صفحه گسترده در برنامه های کاربردی مبتنی بر NET، .NET Core و Xamarin است. میتوانید بسته API را از NuGet نصب کنید یا DLL را مستقیماً از بخش Downloads دانلود کنید.
وارد کردن داده ها از JSON به Excel در سی شارپ
مراحل زیر برای وارد کردن داده ها از JSON به Excel XLSX است:
- یک شیء Workbook جدید ایجاد کنید.
- خواندن داده ها از JSON با استفاده از روش System.IO.File.ReadAllText(string).
- یک شی از کلاس JsonLayoutOptions برای تنظیم گزینه های اضافی ایجاد کنید.
- با استفاده از روش JsonUtility.ImportData() داده ها را از JSON به Excel وارد کنید.
- فایل اکسل را با استفاده از روش Workbook.Save(string) ذخیره کنید.
نمونه کد زیر نحوه وارد کردن داده ها از JSON به Excel در سی شارپ را نشان می دهد.
// یک شی Workbook ایجاد کنید
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];
// فایل JSON را بخوانید
string jsonInput = File.ReadAllText("Data.json");
// JsonLayoutOptions را تنظیم کنید
JsonLayoutOptions options = new JsonLayoutOptions();
options.ArrayAsTable = true;
// داده های JSON را وارد کنید
JsonUtility.ImportData(jsonInput, worksheet.Cells, 0, 0, options);
// فایل اکسل را ذخیره کنید
workbook.Save("Import-Data-JSON-To-Excel.xlsx");
داده های JSON را وارد کنید
[
{
Name: "John Smith",
Contract:
[
{
Client:
{
Name: "A Company"
},
Price: 1200000
},
{
Client:
{
Name: "B Ltd."
},
Price: 750000
},
{
Client:
{
Name: "C & D"
},
Price: 350000
}
]
},
{
Name: "Tony Anderson",
Contract:
[
{
Client:
{
Name: "E Corp."
},
Price: 650000
},
{
Client:
{
Name: "F & Partners"
},
Price: 550000
}
]
},
{
Name: "Jimmy Adams",
Contract:
[
{
Client:
{
Name: "MIT"
},
Price: 800000
},
{
Client:
{
Name: "SnB"
},
Price: 520000
}
]
},
]
خروجی کاربرگ اکسل
وارد کردن JSON به اکسل با قالب بندی سبک در سی شارپ
همچنین میتوانید هنگام وارد کردن دادهها از فایل JSON، سبکهای مختلفی را در کاربرگ اکسل اعمال کنید. کلاس CellsFactory Aspose.Cells for .NET طیف وسیعی از گزینه ها را برای تنظیم پارامترهای استایل مختلف مانند فونت، رنگ، تراز، سبک حاشیه و غیره ارائه می دهد. مراحل زیر برای وارد کردن داده ها از JSON به Excel همراه با استایل است.
- یک شیء Workbook جدید ایجاد کنید.
- فایل JSON را با استفاده از روش System.IO.File.ReadAllText(string) بخوانید.
- یک شی از کلاس CellsFactory ایجاد کنید.
- شیء Style را با استفاده از روش CellsFactory.CreateStyle() ایجاد کنید.
- ویژگی های مورد نظر مانند Style.Font.Color را تنظیم کنید.
- با استفاده از روش JsonUtility.ImportData() داده ها را از JSON به Excel وارد کنید.
- فایل اکسل را با استفاده از روش Workbook.Save(string) ذخیره کنید.
نمونه کد زیر هنگام وارد کردن داده ها از JSON به Excel در سی شارپ، سبک های مختلفی را اعمال می کند.
// یک شی Workbook ایجاد کنید
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];
// فایل JSON را بخوانید
string jsonInput = File.ReadAllText("Data.json");
// تنظیم سبک ها
CellsFactory factory = new CellsFactory();
Style style = factory.CreateStyle();
style.HorizontalAlignment = TextAlignmentType.Center;
style.Font.Color = System.Drawing.Color.BlueViolet;
style.Font.IsBold = true;
// JsonLayoutOptions را تنظیم کنید
JsonLayoutOptions options = new JsonLayoutOptions();
options.TitleStyle = style;
options.ArrayAsTable = true;
// داده های JSON را وارد کنید
JsonUtility.ImportData(jsonInput, worksheet.Cells, 0, 0, options);
// فایل اکسل را ذخیره کنید
workbook.Save("Import-Data-JSON-To-Excel.xlsx");
خروجی کاربرگ اکسل
همچنین ببینید
درباره Aspose.Cells برای دات نت بیشتر بیاموزید
میتوانید با استفاده از مستندات و کد منبع نمونهها درباره Aspose.Cells برای داتنت بیشتر کاوش کنید.