إنشاء ملفات Excel في C# دون تثبيت Microsoft Office

إنشاء ملفات Excel في C# دون تثبيت Microsoft Office
إنشاء ملفات Excel في C# دون تثبيت Microsoft Office

قم بإنشاء ملفات 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 للاستخدام غير التجاري باستخدام الأمر ExcelPackage.LicenseContext = LicenseContext.NonCommercial;. وهذا يضمن الامتثال لشروط ترخيص EPPlus. بعد ذلك، يقوم بإنشاء مثيل حزمة Excel جديد باستخدام using (var package = new ExcelPackage())ويضيف ورقة عمل جديدة باسم "الورقة1" باستخدام var worksheet = package.Workbook.Worksheets.Add("Sheet1");. تتم إضافة البيانات إلى الخلايا عن طريق تحديد قيمها مباشرة، على سبيل المثال، worksheet.Cells[1, 1].Value = "Hello"; يعين القيمة "مرحبًا" للخلية الأولى في الصف الأول. ثم يتم حفظ الملف على القرص باستخدام package.SaveAs(new FileInfo("example.xlsx"));، استكمال عملية إنشاء ملف Excel.

يستخدم البرنامج النصي الثاني مكتبة NPOI لإنشاء ملف Excel. يبدأ الأمر بتهيئة نسخة مصنف جديدة لإنشاء ملفات .XLSX باستخدامها IWorkbook workbook = new XSSFWorkbook();. يتم إنشاء ورقة جديدة باسم "الورقة1" داخل المصنف باستخدام ISheet sheet = workbook.CreateSheet("Sheet1");. يتم إنشاء الصفوف والخلايا وملؤها بالبيانات عن طريق الاتصال IRow row = sheet.CreateRow(0); و row.CreateCell(0).SetCellValue("Hello");، على التوالى. تتم بعد ذلك كتابة المصنف الذي تم إنشاؤه في دفق ملف، وحفظه على القرص باستخدام ملف FileStream ملفوفة في using بيان لإدارة الموارد المناسبة. أخيراً، Console.WriteLine("Excel file created successfully!"); إخراج رسالة نجاح إلى وحدة التحكم. توضح هذه البرامج النصية مدى قوة هذه المكتبات وتنوعها في إنشاء ملفات 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" باستخدام الملف var workbook = new XLWorkbook(); و var worksheet = workbook.Worksheets.Add("Sheet1"); الأوامر.

يمكن إضافة البيانات إلى الخلايا باستخدام أوامر مثل worksheet.Cell(1, 1).Value = "Hello";، ويمكنك تنسيق الخلايا وإضافة الحدود وتعيين أنماط الخطوط باستخدام أوامر بسيطة وقابلة للقراءة. بمجرد تعيين البيانات الخاصة بك، يمكنك حفظ المصنف في ملف باستخدام workbook.SaveAs("example.xlsx");. يدعم ClosedXML مجموعة واسعة من الميزات، بما في ذلك الجداول المحورية والتنسيق الشرطي والمخططات، مما يجعله أداة قوية لإنشاء مستندات Excel المعقدة برمجيًا. تضمن هذه المرونة أن يتمكن المطورون من إنشاء ملفات Excel مصممة خصيصًا لتلبية احتياجاتهم المحددة دون الاعتماد على تثبيت Microsoft Office، وبالتالي تبسيط عملية نشر التطبيقات وتوزيعها.

الأسئلة المتداولة حول إنشاء ملفات Excel في لغة C#

  1. كيف أقوم بتثبيت EPPlus في مشروعي؟
  2. يمكنك تثبيت EPPlus باستخدام NuGet Package Manager باستخدام الأمر Install-Package EPPlus.
  3. ما هو الفرق بين EPPlus وNPOI؟
  4. يُعرف EPPlus بسهولة استخدامه ودعمه لملفات ‎.XLSX فقط، بينما يدعم NPOI تنسيقي ‎.XLS و.XLSX ولكنه يتميز بمنحنى تعليمي أكثر حدة.
  5. هل يستطيع ClosedXML التعامل مع ملفات Excel الكبيرة بكفاءة؟
  6. نعم، يستطيع ClosedXML التعامل مع ملفات Excel الكبيرة، ولكن قد يختلف الأداء بناءً على مدى تعقيد البيانات والعمليات التي يتم إجراؤها.
  7. هل من الممكن إنشاء مخططات في ملفات Excel باستخدام ClosedXML؟
  8. نعم، يدعم ClosedXML إنشاء أنواع مختلفة من المخططات داخل ملفات Excel.
  9. كيف يمكنني تنسيق الخلايا باستخدام ClosedXML؟
  10. يمكنك تنسيق الخلايا باستخدام أوامر مثل worksheet.Cell(1, 1).Style.Font.Bold = true; لتعيين الخط إلى غامق.
  11. هل يمكنني إضافة صيغ إلى الخلايا باستخدام EPPlus؟
  12. نعم، يمكنك إضافة صيغ إلى الخلايا في EPPlus باستخدام أوامر مثل worksheet.Cells[1, 1].Formula = "SUM(A1:A10)";.
  13. ما هي تنسيقات الملفات التي يدعمها NPOI؟
  14. يدعم NPOI تنسيقات الملفات ‎.XLS و.XLSX.
  15. كيف أقوم بحفظ ملف Excel باستخدام EPPlus؟
  16. يمكنك حفظ ملف Excel باستخدام الأمر package.SaveAs(new FileInfo("example.xlsx"));.
  17. هل ClosedXML مجاني للاستخدام؟
  18. نعم، ClosedXML مجاني للاستخدام ومرخص بموجب ترخيص MIT.

الأفكار النهائية حول إنشاء ملفات Excel في C#

يعد إنشاء ملفات Excel باستخدام لغة C# دون الحاجة إلى تثبيت Microsoft Office أسلوبًا عمليًا للغاية للمطورين. باستخدام مكتبات مثل EPPlus وNPOI وClosedXML، يمكنك إنشاء جداول بيانات Excel بسهولة، مما يوفر نطاقًا واسعًا من الميزات وخيارات التخصيص. لا تعمل هذه الحلول على تبسيط عملية التطوير فحسب، بل تضمن أيضًا أن تكون تطبيقاتك أكثر سهولة في النقل وأسهل في النشر عبر بيئات مختلفة.