قم بإنشاء ملفات Excel في C# بسلاسة
يمكن أن يكون إنشاء ملفات Excel (.XLS و.XLSX) في لغة C# مطلبًا حاسمًا للعديد من التطبيقات. ومع ذلك، قد يكون الاعتماد على تثبيت Microsoft Office على الخادم أو جهاز العميل أمرًا غير عملي ومرهقًا.
لحسن الحظ، هناك مكتبات وأدوات قوية متاحة تسمح للمطورين بإنشاء جداول بيانات Excel برمجياً باستخدام لغة C# دون الحاجة إلى Microsoft Office. تستكشف هذه المقالة الأساليب والمكتبات المختلفة لتحقيق ذلك بكفاءة.
يأمر | وصف |
---|---|
ExcelPackage.LicenseContext = LicenseContext.NonCommercial; | يضبط سياق ترخيص EPPlus للاستخدام غير التجاري. |
var worksheet = package.Workbook.Worksheets.Add("Sheet1"); | إنشاء ورقة عمل جديدة باسم "الورقة1" في حزمة Excel باستخدام EPPlus. |
worksheet.Cells[1, 1].Value = "Hello"; | يضبط قيمة الخلية في الصف 1، العمود 1 على "Hello" باستخدام EPPlus. |
IWorkbook workbook = new XSSFWorkbook(); | تهيئة مثيل مصنف جديد لإنشاء ملفات .XLSX باستخدام NPOI. |
ISheet sheet = workbook.CreateSheet("Sheet1"); | إنشاء ورقة جديدة باسم "الورقة1" في المصنف باستخدام NPOI. |
IRow row = sheet.CreateRow(0); | ينشئ صفًا جديدًا عند الفهرس 0 في الورقة باستخدام NPOI. |
row.CreateCell(0).SetCellValue("Hello"); | يضبط قيمة الخلية في الصف 0 والعمود 0 على "Hello" باستخدام NPOI. |
فهم إنشاء ملفات Excel في C#
توضح البرامج النصية المذكورة أعلاه كيفية إنشاء ملفات Excel (.XLS و.XLSX) في C# دون تثبيت Microsoft Office من خلال استخدام مكتبتين شائعتين: EPPlus وNPOI. يستفيد البرنامج النصي الأول من مكتبة EPPlus. يبدأ الأمر بتعيين سياق ترخيص EPPlus للاستخدام غير التجاري باستخدام الأمر . وهذا يضمن الامتثال لشروط ترخيص EPPlus. بعد ذلك، يقوم بإنشاء مثيل حزمة Excel جديد باستخدام ويضيف ورقة عمل جديدة باسم "الورقة1" باستخدام . تتم إضافة البيانات إلى الخلايا عن طريق تحديد قيمها مباشرة، على سبيل المثال، worksheet.Cells[1, 1].Value = "Hello"; يعين القيمة "مرحبًا" للخلية الأولى في الصف الأول. ثم يتم حفظ الملف على القرص باستخدام ، استكمال عملية إنشاء ملف Excel.
يستخدم البرنامج النصي الثاني مكتبة NPOI لإنشاء ملف Excel. يبدأ الأمر بتهيئة نسخة مصنف جديدة لإنشاء ملفات .XLSX باستخدامها . يتم إنشاء ورقة جديدة باسم "الورقة1" داخل المصنف باستخدام . يتم إنشاء الصفوف والخلايا وملؤها بالبيانات عن طريق الاتصال و row.CreateCell(0).SetCellValue("Hello");، على التوالى. تتم بعد ذلك كتابة المصنف الذي تم إنشاؤه في دفق ملف، وحفظه على القرص باستخدام ملف ملفوفة في بيان لإدارة الموارد المناسبة. أخيراً، إخراج رسالة نجاح إلى وحدة التحكم. توضح هذه البرامج النصية مدى قوة هذه المكتبات وتنوعها في إنشاء ملفات Excel بلغة C# دون الحاجة إلى تثبيت Microsoft Office.
إنشاء ملفات Excel باستخدام EPPlus في C#
يوضح هذا البرنامج النصي إنشاء ملف Excel باستخدام مكتبة EPPlus في لغة C#.
using System;
using System.IO;
using OfficeOpenXml;
namespace ExcelCreationExample
{
class Program
{
static void Main(string[] args)
{
ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
using (var package = new ExcelPackage())
{
var worksheet = package.Workbook.Worksheets.Add("Sheet1");
worksheet.Cells[1, 1].Value = "Hello";
worksheet.Cells[1, 2].Value = "World";
var file = new FileInfo("example.xlsx");
package.SaveAs(file);
Console.WriteLine("Excel file created successfully!");
}
}
}
}
إنشاء ملفات Excel باستخدام NPOI في C#
يوضح هذا البرنامج النصي كيفية استخدام مكتبة NPOI لإنشاء ملف Excel في C#.
using System;
using System.IO;
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
namespace ExcelCreationExample
{
class Program
{
static void Main(string[] args)
{
IWorkbook workbook = new XSSFWorkbook();
ISheet sheet = workbook.CreateSheet("Sheet1");
IRow row = sheet.CreateRow(0);
row.CreateCell(0).SetCellValue("Hello");
row.CreateCell(1).SetCellValue("World");
using (var file = new FileStream("example.xlsx", FileMode.Create, FileAccess.Write))
{
workbook.Write(file);
}
Console.WriteLine("Excel file created successfully!");
}
}
}
إنشاء ملفات Excel باستخدام ClosedXML في C#
مكتبة أخرى ممتازة لإنشاء ملفات Excel في C# دون الحاجة إلى Microsoft Office هي ClosedXML. ClosedXML هي مكتبة .NET لقراءة ملفات Excel 2007+ (.XLSX) ومعالجتها وكتابتها. إنه بديهي وسهل الاستخدام، مما يجعله المفضل لدى المطورين. يتيح لك ClosedXML إنشاء ملفات Excel ذات ميزات غنية، مثل تنسيق الخلايا وإضافة الصيغ وإنشاء الجداول. لبدء استخدام ClosedXML، تحتاج إلى تثبيته عبر NuGet. بعد الإعداد، يمكنك إنشاء مصنف Excel جديد باستخدام بضعة أسطر فقط من التعليمات البرمجية. على سبيل المثال، يمكنك بدء مصنف جديد وإضافة ورقة عمل باسم "الورقة1" باستخدام الملف و الأوامر.
يمكن إضافة البيانات إلى الخلايا باستخدام أوامر مثل ، ويمكنك تنسيق الخلايا وإضافة الحدود وتعيين أنماط الخطوط باستخدام أوامر بسيطة وقابلة للقراءة. بمجرد تعيين البيانات الخاصة بك، يمكنك حفظ المصنف في ملف باستخدام . يدعم ClosedXML مجموعة واسعة من الميزات، بما في ذلك الجداول المحورية والتنسيق الشرطي والمخططات، مما يجعله أداة قوية لإنشاء مستندات Excel المعقدة برمجيًا. تضمن هذه المرونة أن يتمكن المطورون من إنشاء ملفات Excel مصممة خصيصًا لتلبية احتياجاتهم المحددة دون الاعتماد على تثبيت Microsoft Office، وبالتالي تبسيط عملية نشر التطبيقات وتوزيعها.
- كيف أقوم بتثبيت EPPlus في مشروعي؟
- يمكنك تثبيت EPPlus باستخدام NuGet Package Manager باستخدام الأمر .
- ما هو الفرق بين EPPlus وNPOI؟
- يُعرف EPPlus بسهولة استخدامه ودعمه لملفات .XLSX فقط، بينما يدعم NPOI تنسيقي .XLS و.XLSX ولكنه يتميز بمنحنى تعليمي أكثر حدة.
- هل يستطيع ClosedXML التعامل مع ملفات Excel الكبيرة بكفاءة؟
- نعم، يستطيع ClosedXML التعامل مع ملفات Excel الكبيرة، ولكن قد يختلف الأداء بناءً على مدى تعقيد البيانات والعمليات التي يتم إجراؤها.
- هل من الممكن إنشاء مخططات في ملفات Excel باستخدام ClosedXML؟
- نعم، يدعم ClosedXML إنشاء أنواع مختلفة من المخططات داخل ملفات Excel.
- كيف يمكنني تنسيق الخلايا باستخدام ClosedXML؟
- يمكنك تنسيق الخلايا باستخدام أوامر مثل لتعيين الخط إلى غامق.
- هل يمكنني إضافة صيغ إلى الخلايا باستخدام EPPlus؟
- نعم، يمكنك إضافة صيغ إلى الخلايا في EPPlus باستخدام أوامر مثل .
- ما هي تنسيقات الملفات التي يدعمها NPOI؟
- يدعم NPOI تنسيقات الملفات .XLS و.XLSX.
- كيف أقوم بحفظ ملف Excel باستخدام EPPlus؟
- يمكنك حفظ ملف Excel باستخدام الأمر .
- هل ClosedXML مجاني للاستخدام؟
- نعم، ClosedXML مجاني للاستخدام ومرخص بموجب ترخيص MIT.
يعد إنشاء ملفات Excel باستخدام لغة C# دون الحاجة إلى تثبيت Microsoft Office أسلوبًا عمليًا للغاية للمطورين. باستخدام مكتبات مثل EPPlus وNPOI وClosedXML، يمكنك إنشاء جداول بيانات Excel بسهولة، مما يوفر نطاقًا واسعًا من الميزات وخيارات التخصيص. لا تعمل هذه الحلول على تبسيط عملية التطوير فحسب، بل تضمن أيضًا أن تكون تطبيقاتك أكثر سهولة في النقل وأسهل في النشر عبر بيئات مختلفة.