Mencipta Fail Excel dalam C# Tanpa Memasang Microsoft Office

Mencipta Fail Excel dalam C# Tanpa Memasang Microsoft Office
Mencipta Fail Excel dalam C# Tanpa Memasang Microsoft Office

Hasilkan Fail Excel dalam C# Dengan lancar

Mencipta fail Excel (.XLS dan .XLSX) dalam C# boleh menjadi keperluan penting untuk banyak aplikasi. Walau bagaimanapun, bergantung pada pemasangan Microsoft Office pada pelayan atau mesin klien boleh menjadi tidak praktikal dan menyusahkan.

Nasib baik, terdapat perpustakaan dan alat yang teguh tersedia yang membolehkan pembangun menjana hamparan Excel secara pemprograman dalam C# tanpa memerlukan Microsoft Office. Artikel ini meneroka pelbagai kaedah dan perpustakaan untuk mencapai matlamat ini dengan cekap.

Perintah Penerangan
ExcelPackage.LicenseContext = LicenseContext.NonCommercial; Menetapkan konteks lesen untuk EPPlus kepada penggunaan bukan komersial.
var worksheet = package.Workbook.Worksheets.Add("Sheet1"); Mencipta lembaran kerja baharu bernama "Sheet1" dalam pakej Excel menggunakan EPPlus.
worksheet.Cells[1, 1].Value = "Hello"; Tetapkan nilai sel pada baris 1, lajur 1 kepada "Hello" menggunakan EPPlus.
IWorkbook workbook = new XSSFWorkbook(); Memulakan contoh buku kerja baharu untuk mencipta fail .XLSX menggunakan NPOI.
ISheet sheet = workbook.CreateSheet("Sheet1"); Mencipta helaian baharu bernama "Helaian1" dalam buku kerja menggunakan NPOI.
IRow row = sheet.CreateRow(0); Mencipta baris baharu pada indeks 0 dalam helaian menggunakan NPOI.
row.CreateCell(0).SetCellValue("Hello"); Tetapkan nilai sel pada baris 0, lajur 0 kepada "Hello" menggunakan NPOI.

Memahami Penciptaan Fail Excel dalam C#

Skrip yang disediakan di atas menunjukkan cara membuat fail Excel (.XLS dan .XLSX) dalam C# tanpa memasang Microsoft Office dengan menggunakan dua perpustakaan popular: EPPlus dan NPOI. Skrip pertama memanfaatkan perpustakaan EPPlus. Ia bermula dengan menetapkan konteks lesen untuk EPPlus kepada penggunaan bukan komersial dengan arahan ExcelPackage.LicenseContext = LicenseContext.NonCommercial;. Ini memastikan pematuhan terhadap syarat pelesenan EPPlus. Seterusnya, ia mencipta contoh pakej Excel baharu menggunakan using (var package = new ExcelPackage()), dan menambah lembaran kerja baharu bernama "Sheet1" menggunakan var worksheet = package.Workbook.Worksheets.Add("Sheet1");. Data ditambahkan pada sel dengan menetapkan nilainya secara langsung, contohnya, worksheet.Cells[1, 1].Value = "Hello"; memberikan nilai "Hello" kepada sel pertama dalam baris pertama. Fail itu kemudiannya disimpan ke cakera dengan package.SaveAs(new FileInfo("example.xlsx"));, melengkapkan proses penciptaan fail Excel.

Skrip kedua menggunakan perpustakaan NPOI untuk mencipta fail Excel. Ia bermula dengan memulakan contoh buku kerja baharu untuk mencipta fail .XLSX dengan IWorkbook workbook = new XSSFWorkbook();. Helaian baharu bernama "Helaian1" dibuat dalam buku kerja menggunakan ISheet sheet = workbook.CreateSheet("Sheet1");. Baris dan sel dibuat dan diisi dengan data dengan membuat panggilan IRow row = sheet.CreateRow(0); dan row.CreateCell(0).SetCellValue("Hello");, masing-masing. Buku kerja yang dicipta kemudian ditulis ke aliran fail, dan disimpan ke cakera menggunakan a FileStream dibalut dengan a using pernyataan untuk pengurusan sumber yang betul. Akhirnya, Console.WriteLine("Excel file created successfully!"); mengeluarkan mesej kejayaan kepada konsol. Skrip ini menunjukkan betapa hebat dan serba boleh perpustakaan ini untuk menjana fail Excel dalam C# tanpa memerlukan Microsoft Office dipasang.

Menjana Fail Excel Menggunakan EPPlus dalam C#

Skrip ini menunjukkan mencipta fail Excel menggunakan perpustakaan EPPlus dalam 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!");
            }
        }
    }
}

Mencipta Fail Excel dengan NPOI dalam C#

Skrip ini menunjukkan cara menggunakan perpustakaan NPOI untuk mencipta fail Excel dalam 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!");
        }
    }
}

Mencipta Fail Excel dengan ClosedXML dalam C#

Satu lagi perpustakaan yang sangat baik untuk mencipta fail Excel dalam C# tanpa memerlukan Microsoft Office ialah ClosedXML. ClosedXML ialah perpustakaan .NET untuk membaca, memanipulasi dan menulis fail Excel 2007+ (.XLSX). Ia intuitif dan mudah digunakan, menjadikannya kegemaran di kalangan pembangun. ClosedXML membolehkan anda membuat fail Excel dengan ciri yang kaya, seperti memformat sel, menambah formula dan membuat jadual. Untuk mula menggunakan ClosedXML, anda perlu memasangnya melalui NuGet. Selepas menyediakan, anda boleh membuat buku kerja Excel baharu dengan hanya beberapa baris kod. Sebagai contoh, anda memulakan buku kerja baharu dan menambah lembaran kerja bernama "Helaian1" menggunakan var workbook = new XLWorkbook(); dan var worksheet = workbook.Worksheets.Add("Sheet1"); arahan.

Data boleh ditambah ke sel dengan arahan seperti worksheet.Cell(1, 1).Value = "Hello";, dan anda boleh memformat sel, menambah sempadan dan menetapkan gaya fon dengan arahan yang mudah dan boleh dibaca. Setelah data anda ditetapkan, anda menyimpan buku kerja ke fail menggunakan workbook.SaveAs("example.xlsx");. ClosedXML menyokong pelbagai ciri, termasuk jadual pangsi, pemformatan bersyarat dan carta, menjadikannya alat yang berkuasa untuk mencipta dokumen Excel yang kompleks secara pengaturcaraan. Fleksibiliti ini memastikan bahawa pembangun boleh menjana fail Excel yang disesuaikan dengan keperluan khusus mereka tanpa bergantung pada pemasangan Microsoft Office, sekali gus memudahkan penggunaan dan pengedaran aplikasi.

Soalan Lazim tentang Mencipta Fail Excel dalam C#

  1. Bagaimanakah cara saya memasang EPPlus dalam projek saya?
  2. Anda boleh memasang EPPlus menggunakan Pengurus Pakej NuGet dengan arahan Install-Package EPPlus.
  3. Apakah perbezaan antara EPPlus dan NPOI?
  4. EPPlus terkenal dengan kemudahan penggunaan dan sokongan untuk fail .XLSX sahaja, manakala NPOI menyokong kedua-dua format .XLS dan .XLSX tetapi mempunyai keluk pembelajaran yang lebih curam.
  5. Bolehkah ClosedXML mengendalikan fail Excel yang besar dengan cekap?
  6. Ya, ClosedXML boleh mengendalikan fail Excel yang besar, tetapi prestasi mungkin berbeza-beza berdasarkan kerumitan data dan operasi yang dilakukan.
  7. Adakah mungkin untuk membuat carta dalam fail Excel menggunakan ClosedXML?
  8. Ya, ClosedXML menyokong mencipta pelbagai jenis carta dalam fail Excel.
  9. Bagaimanakah cara saya memformat sel menggunakan ClosedXML?
  10. Anda boleh memformat sel menggunakan arahan seperti worksheet.Cell(1, 1).Style.Font.Bold = true; untuk menetapkan fon kepada tebal.
  11. Bolehkah saya menambah formula pada sel dengan EPPlus?
  12. Ya, anda boleh menambah formula pada sel dalam EPPlus menggunakan arahan seperti worksheet.Cells[1, 1].Formula = "SUM(A1:A10)";.
  13. Apakah format fail yang disokong oleh NPOI?
  14. NPOI menyokong kedua-dua format fail .XLS dan .XLSX.
  15. Bagaimanakah cara saya menyimpan fail Excel menggunakan EPPlus?
  16. Anda boleh menyimpan fail Excel menggunakan arahan package.SaveAs(new FileInfo("example.xlsx"));.
  17. Adakah ClosedXML percuma untuk digunakan?
  18. Ya, ClosedXML adalah percuma untuk digunakan dan dilesenkan di bawah Lesen MIT.

Pemikiran Akhir tentang Mencipta Fail Excel dalam C#

Mencipta fail Excel dalam C# tanpa memerlukan pemasangan Microsoft Office ialah pendekatan yang sangat praktikal untuk pembangun. Dengan menggunakan perpustakaan seperti EPPlus, NPOI dan ClosedXML, anda boleh menjana hamparan Excel dengan mudah, menawarkan pelbagai ciri dan pilihan penyesuaian. Penyelesaian ini bukan sahaja memudahkan proses pembangunan tetapi juga memastikan bahawa aplikasi anda lebih mudah alih dan lebih mudah untuk digunakan merentas persekitaran yang berbeza.