Vytváranie Excel súborov v C# bez inštalácie Microsoft Office

Vytváranie Excel súborov v C# bez inštalácie Microsoft Office
Vytváranie Excel súborov v C# bez inštalácie Microsoft Office

Bezproblémovo generujte súbory Excel v C#

Vytváranie excelových súborov (.XLS a .XLSX) v C# môže byť kľúčovou požiadavkou pre mnohé aplikácie. Spoliehanie sa na inštaláciu balíka Microsoft Office na server alebo klientsky počítač však môže byť nepraktické a ťažkopádne.

Našťastie sú dostupné robustné knižnice a nástroje, ktoré umožňujú vývojárom generovať excelové tabuľky programovo v C# bez potreby Microsoft Office. Tento článok skúma rôzne metódy a knižnice, ako to dosiahnuť efektívne.

Príkaz Popis
ExcelPackage.LicenseContext = LicenseContext.NonCommercial; Nastaví licenčný kontext pre EPPlus na nekomerčné použitie.
var worksheet = package.Workbook.Worksheets.Add("Sheet1"); Vytvorí nový pracovný hárok s názvom „Hárok1“ v balíku Excel pomocou EPPlus.
worksheet.Cells[1, 1].Value = "Hello"; Nastaví hodnotu bunky v riadku 1, stĺpci 1 na "Ahoj" pomocou EPPlus.
IWorkbook workbook = new XSSFWorkbook(); Inicializuje novú inštanciu zošita na vytváranie súborov .XLSX pomocou NPOI.
ISheet sheet = workbook.CreateSheet("Sheet1"); Vytvorí nový hárok s názvom "Hárok1" v zošite pomocou NPOI.
IRow row = sheet.CreateRow(0); Vytvorí nový riadok s indexom 0 v hárku pomocou NPOI.
row.CreateCell(0).SetCellValue("Hello"); Nastaví hodnotu bunky v riadku 0, stĺpci 0 na "Ahoj" pomocou NPOI.

Pochopenie vytvárania súborov programu Excel v jazyku C#

Skripty uvedené vyššie demonštrujú, ako vytvoriť súbory programu Excel (.XLS a .XLSX) v jazyku C# bez inštalácie balíka Microsoft Office pomocou dvoch populárnych knižníc: EPPlus a NPOI. Prvý skript využíva knižnicu EPPlus. Začína sa nastavením licenčného kontextu pre EPPlus na nekomerčné použitie pomocou príkazu ExcelPackage.LicenseContext = LicenseContext.NonCommercial;. To zaisťuje súlad s licenčnými podmienkami EPPlus. Ďalej vytvorí novú inštanciu balíka Excel pomocou using (var package = new ExcelPackage())a pridá nový pracovný hárok s názvom "Hárok1" pomocou var worksheet = package.Workbook.Worksheets.Add("Sheet1");. Údaje sa do buniek pridávajú priamym nastavením ich hodnôt, napr. worksheet.Cells[1, 1].Value = "Hello"; priradí hodnotu „Ahoj“ prvej bunke v prvom riadku. Súbor sa potom uloží na disk s package.SaveAs(new FileInfo("example.xlsx"));, čím sa dokončí proces vytvárania súboru Excel.

Druhý skript využíva knižnicu NPOI na vytvorenie súboru Excel. Začína sa inicializáciou novej inštancie zošita na vytváranie súborov .XLSX IWorkbook workbook = new XSSFWorkbook();. V zošite sa vytvorí nový hárok s názvom "Hárok1" pomocou ISheet sheet = workbook.CreateSheet("Sheet1");. Riadky a bunky sa vytvárajú a napĺňajú údajmi volaním IRow row = sheet.CreateRow(0); a row.CreateCell(0).SetCellValue("Hello");, resp. Vytvorený zošit sa potom zapíše do streamu súborov a uloží na disk pomocou a FileStream zabalené v a using pre správne riadenie zdrojov. nakoniec Console.WriteLine("Excel file created successfully!"); odošle správu o úspechu do konzoly. Tieto skripty ukazujú, aké výkonné a všestranné sú tieto knižnice na generovanie Excel súborov v C# bez potreby inštalácie Microsoft Office.

Generovanie Excel súborov pomocou EPPlus v C#

Tento skript demonštruje vytvorenie súboru Excel pomocou knižnice EPPlus v jazyku 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!");
            }
        }
    }
}

Vytváranie Excel súborov s NPOI v C#

Tento skript ukazuje, ako použiť knižnicu NPOI na vytvorenie súboru Excel v jazyku 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!");
        }
    }
}

Vytváranie súborov Excel pomocou ClosedXML v C#

Ďalšou vynikajúcou knižnicou na vytváranie súborov programu Excel v jazyku C# bez potreby balíka Microsoft Office je ClosedXML. ClosedXML je knižnica .NET na čítanie, manipuláciu a zápis súborov programu Excel 2007+ (.XLSX). Je intuitívny a ľahko sa používa, vďaka čomu je obľúbený medzi vývojármi. ClosedXML vám umožňuje vytvárať excelové súbory s bohatými funkciami, ako je formátovanie buniek, pridávanie vzorcov a vytváranie tabuliek. Ak chcete začať používať ClosedXML, musíte si ho nainštalovať cez NuGet. Po nastavení môžete pomocou niekoľkých riadkov kódu vytvoriť nový excelový zošit. Napríklad spustíte nový zošit a pridáte hárok s názvom "Hárok1" pomocou var workbook = new XLWorkbook(); a var worksheet = workbook.Worksheets.Add("Sheet1"); príkazy.

Údaje je možné pridávať do buniek pomocou príkazov ako worksheet.Cell(1, 1).Value = "Hello";a pomocou jednoduchých a čitateľných príkazov môžete formátovať bunky, pridávať okraje a nastavovať štýly písma. Po nastavení údajov uložíte zošit do súboru pomocou workbook.SaveAs("example.xlsx");. ClosedXML podporuje širokú škálu funkcií vrátane kontingenčných tabuliek, podmieneného formátovania a grafov, čo z neho robí výkonný nástroj na vytváranie zložitých dokumentov programu Excel pomocou programu. Táto flexibilita zaisťuje, že vývojári môžu vytvárať súbory Excel prispôsobené ich špecifickým potrebám bez toho, aby sa spoliehali na inštaláciu balíka Microsoft Office, čím sa zjednodušuje nasadenie a distribúcia aplikácií.

Často kladené otázky o vytváraní Excel súborov v C#

  1. Ako nainštalujem EPPlus v mojom projekte?
  2. EPPlus môžete nainštalovať pomocou správcu balíkov NuGet s príkazom Install-Package EPPlus.
  3. Aký je rozdiel medzi EPPlus a NPOI?
  4. EPPlus je známy svojim jednoduchým používaním a podporou iba pre súbory .XLSX, zatiaľ čo NPOI podporuje formáty .XLS aj .XLSX, ale má strmšiu krivku učenia.
  5. Dokáže ClosedXML efektívne spracovať veľké súbory programu Excel?
  6. Áno, ClosedXML dokáže spracovať veľké súbory programu Excel, ale výkon sa môže líšiť v závislosti od zložitosti údajov a vykonaných operácií.
  7. Je možné vytvárať grafy v súboroch programu Excel pomocou ClosedXML?
  8. Áno, ClosedXML podporuje vytváranie rôznych typov grafov v súboroch programu Excel.
  9. Ako naformátujem bunky pomocou ClosedXML?
  10. Bunky môžete formátovať pomocou príkazov ako worksheet.Cell(1, 1).Style.Font.Bold = true; pre nastavenie písma na tučné.
  11. Môžem pridávať vzorce do buniek pomocou EPPlus?
  12. Áno, do buniek v EPPlus môžete pridávať vzorce pomocou príkazov ako worksheet.Cells[1, 1].Formula = "SUM(A1:A10)";.
  13. Aké formáty súborov podporuje NPOI?
  14. NPOI podporuje formáty súborov .XLS aj .XLSX.
  15. Ako uložím súbor Excel pomocou EPPlus?
  16. Pomocou príkazu môžete uložiť súbor programu Excel package.SaveAs(new FileInfo("example.xlsx"));.
  17. Je ClosedXML zadarmo?
  18. Áno, ClosedXML je voľne použiteľný a je licencovaný pod licenciou MIT.

Záverečné myšlienky na vytváranie Excel súborov v C#

Vytváranie súborov programu Excel v jazyku C# bez potreby inštalácie balíka Microsoft Office je pre vývojárov veľmi praktický prístup. Pomocou knižníc ako EPPlus, NPOI a ClosedXML môžete jednoducho vytvárať tabuľky Excelu, ktoré ponúkajú širokú škálu funkcií a možností prispôsobenia. Tieto riešenia nielenže zjednodušujú proces vývoja, ale tiež zaisťujú, že vaše aplikácie budú prenosnejšie a ľahšie nasaditeľné v rôznych prostrediach.