Vytváření souborů Excel v C# bez instalace Microsoft Office

Vytváření souborů Excel v C# bez instalace Microsoft Office
Vytváření souborů Excel v C# bez instalace Microsoft Office

Bezproblémově generujte soubory Excel v C#

Vytváření souborů Excel (.XLS a .XLSX) v C# může být zásadním požadavkem pro mnoho aplikací. Spoléhat se na instalaci sady Microsoft Office na server nebo klientský počítač však může být nepraktické a těžkopádné.

Naštěstí jsou k dispozici robustní knihovny a nástroje, které vývojářům umožňují generovat excelové tabulky programově v C# bez potřeby Microsoft Office. Tento článek zkoumá různé metody a knihovny, jak toho dosáhnout efektivně.

Příkaz Popis
ExcelPackage.LicenseContext = LicenseContext.NonCommercial; Nastaví licenční kontext pro EPPlus na nekomerční použití.
var worksheet = package.Workbook.Worksheets.Add("Sheet1"); Vytvoří nový list s názvem "Sheet1" v balíčku Excel pomocí EPPlus.
worksheet.Cells[1, 1].Value = "Hello"; Nastaví hodnotu buňky na řádku 1, sloupci 1 na "Ahoj" pomocí EPPlus.
IWorkbook workbook = new XSSFWorkbook(); Inicializuje novou instanci sešitu pro vytváření souborů .XLSX pomocí NPOI.
ISheet sheet = workbook.CreateSheet("Sheet1"); Vytvoří nový list s názvem "List1" v sešitu pomocí NPOI.
IRow row = sheet.CreateRow(0); Vytvoří nový řádek s indexem 0 v listu pomocí NPOI.
row.CreateCell(0).SetCellValue("Hello"); Nastaví hodnotu buňky na řádku 0, sloupci 0 na "Ahoj" pomocí NPOI.

Pochopení vytváření souborů aplikace Excel v C#

Výše uvedené skripty demonstrují, jak vytvořit soubory Excel (.XLS a .XLSX) v C# bez instalace Microsoft Office pomocí dvou oblíbených knihoven: EPPlus a NPOI. První skript využívá knihovnu EPPlus. Začíná nastavením licenčního kontextu pro EPPlus na nekomerční použití pomocí příkazu ExcelPackage.LicenseContext = LicenseContext.NonCommercial;. To zajišťuje soulad s licenčními podmínkami EPPlus. Dále vytvoří novou instanci balíčku Excel pomocí using (var package = new ExcelPackage())a přidá nový list s názvem "List1" pomocí var worksheet = package.Workbook.Worksheets.Add("Sheet1");. Data se do buněk přidávají přímým nastavením jejich hodnot, např. worksheet.Cells[1, 1].Value = "Hello"; přiřadí první buňce v prvním řádku hodnotu "Ahoj". Soubor se poté uloží na disk pomocí package.SaveAs(new FileInfo("example.xlsx"));, dokončení procesu vytváření souboru Excel.

Druhý skript využívá knihovnu NPOI k vytvoření souboru aplikace Excel. Začíná inicializací nové instance sešitu pro vytváření souborů .XLSX IWorkbook workbook = new XSSFWorkbook();. V sešitu je vytvořen nový list s názvem "List1" pomocí ISheet sheet = workbook.CreateSheet("Sheet1");. Řádky a buňky jsou vytvářeny a naplněny daty voláním IRow row = sheet.CreateRow(0); a row.CreateCell(0).SetCellValue("Hello");, resp. Vytvořený sešit je poté zapsán do datového proudu souborů a uložen na disk pomocí a FileStream zabalený v a using prohlášení pro správné řízení zdrojů. Konečně, Console.WriteLine("Excel file created successfully!"); vypíše do konzole zprávu o úspěchu. Tyto skripty ukazují, jak výkonné a všestranné jsou tyto knihovny pro generování souborů Excel v C# bez nutnosti instalace Microsoft Office.

Generování souborů Excel pomocí EPPlus v C#

Tento skript ukazuje vytvoření souboru Excel pomocí knihovny EPPlus v 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áření souborů Excel s NPOI v C#

Tento skript ukazuje, jak použít knihovnu NPOI k vytvoření souboru Excel v 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áření souborů Excel pomocí ClosedXML v C#

Další vynikající knihovnou pro vytváření souborů Excel v C# bez nutnosti Microsoft Office je ClosedXML. ClosedXML je knihovna .NET pro čtení, manipulaci a zápis souborů aplikace Excel 2007+ (.XLSX). Je intuitivní a snadno se používá, díky čemuž je oblíbený mezi vývojáři. ClosedXML umožňuje vytvářet soubory aplikace Excel s bohatými funkcemi, jako je formátování buněk, přidávání vzorců a vytváření tabulek. Chcete-li začít používat ClosedXML, musíte jej nainstalovat přes NuGet. Po nastavení můžete pomocí několika řádků kódu vytvořit nový excelový sešit. Například spustíte nový sešit a přidáte list s názvem "List1" pomocí var workbook = new XLWorkbook(); a var worksheet = workbook.Worksheets.Add("Sheet1"); příkazy.

Data lze přidávat do buněk pomocí příkazů jako worksheet.Cell(1, 1).Value = "Hello";a pomocí jednoduchých a čitelných příkazů můžete formátovat buňky, přidávat okraje a nastavovat styly písma. Jakmile jsou vaše data nastavena, uložíte sešit do souboru pomocí workbook.SaveAs("example.xlsx");. ClosedXML podporuje širokou škálu funkcí, včetně kontingenčních tabulek, podmíněného formátování a grafů, díky čemuž je výkonným nástrojem pro vytváření složitých dokumentů Excelu programově. Tato flexibilita zajišťuje, že vývojáři mohou generovat soubory Excel přizpůsobené jejich specifickým potřebám, aniž by se spoléhali na instalaci Microsoft Office, čímž se zjednodušuje nasazení a distribuce aplikací.

Často kladené otázky o vytváření souborů Excel v C#

  1. Jak nainstaluji EPPlus do svého projektu?
  2. EPPlus můžete nainstalovat pomocí NuGet Package Manager s příkazem Install-Package EPPlus.
  3. Jaký je rozdíl mezi EPPlus a NPOI?
  4. EPPlus je známý pro své snadné použití a podporu pouze pro soubory .XLSX, zatímco NPOI podporuje formáty .XLS i .XLSX, ale má strmější křivku učení.
  5. Dokáže ClosedXML efektivně zpracovat velké soubory Excelu?
  6. Ano, ClosedXML zvládne velké soubory Excelu, ale výkon se může lišit v závislosti na složitosti dat a prováděných operací.
  7. Je možné vytvářet grafy v souborech aplikace Excel pomocí ClosedXML?
  8. Ano, ClosedXML podporuje vytváření různých typů grafů v souborech aplikace Excel.
  9. Jak naformátuji buňky pomocí ClosedXML?
  10. Buňky můžete formátovat pomocí příkazů jako worksheet.Cell(1, 1).Style.Font.Bold = true; pro nastavení písma na tučné.
  11. Mohu přidávat vzorce do buněk pomocí EPPlus?
  12. Ano, do buněk v EPPlus můžete přidávat vzorce pomocí příkazů jako worksheet.Cells[1, 1].Formula = "SUM(A1:A10)";.
  13. Jaké formáty souborů NPOI podporuje?
  14. NPOI podporuje formáty souborů .XLS i .XLSX.
  15. Jak uložím soubor Excel pomocí EPPlus?
  16. Soubor Excel můžete uložit pomocí příkazu package.SaveAs(new FileInfo("example.xlsx"));.
  17. Je ClosedXML zdarma k použití?
  18. Ano, ClosedXML je zdarma k použití a je licencován pod licencí MIT.

Závěrečné myšlenky na vytváření souborů Excel v C#

Vytváření souborů Excel v C# bez nutnosti instalace Microsoft Office je pro vývojáře velmi praktický přístup. Pomocí knihoven jako EPPlus, NPOI a ClosedXML můžete snadno generovat excelové tabulky, které nabízejí širokou škálu funkcí a možností přizpůsobení. Tato řešení nejen zjednodušují proces vývoje, ale také zajišťují, že vaše aplikace jsou přenosnější a snadněji se nasazují v různých prostředích.