Opprette Excel-filer i C# uten å installere Microsoft Office

C#

Generer Excel-filer i C# sømløst

Å lage Excel-filer (.XLS og .XLSX) i C# kan være et avgjørende krav for mange applikasjoner. Det kan imidlertid være upraktisk og tungvint å stole på installasjonen av Microsoft Office på serveren eller klientmaskinen.

Heldigvis er det robuste biblioteker og verktøy tilgjengelig som lar utviklere generere Excel-regneark programmatisk i C# uten behov for Microsoft Office. Denne artikkelen utforsker de ulike metodene og bibliotekene for å oppnå dette effektivt.

Kommando Beskrivelse
ExcelPackage.LicenseContext = LicenseContext.NonCommercial; Setter lisenskonteksten for EPPlus til ikke-kommersiell bruk.
var worksheet = package.Workbook.Worksheets.Add("Sheet1"); Oppretter et nytt regneark kalt "Sheet1" i Excel-pakken ved hjelp av EPPlus.
worksheet.Cells[1, 1].Value = "Hello"; Setter verdien av cellen på rad 1, kolonne 1 til "Hei" ved hjelp av EPPlus.
IWorkbook workbook = new XSSFWorkbook(); Initialiserer en ny arbeidsbokforekomst for å lage .XLSX-filer ved hjelp av NPOI.
ISheet sheet = workbook.CreateSheet("Sheet1"); Oppretter et nytt ark kalt "Sheet1" i arbeidsboken ved hjelp av NPOI.
IRow row = sheet.CreateRow(0); Oppretter en ny rad ved indeks 0 i arket ved hjelp av NPOI.
row.CreateCell(0).SetCellValue("Hello"); Setter verdien til cellen på rad 0, kolonne 0 til "Hei" ved hjelp av NPOI.

Forstå opprettelsen av Excel-filer i C#

Skriptene ovenfor viser hvordan du lager Excel-filer (.XLS og .XLSX) i C# uten å installere Microsoft Office ved å bruke to populære biblioteker: EPPlus og NPOI. Det første skriptet utnytter EPPlus-biblioteket. Det begynner med å sette lisenskonteksten for EPPlus til ikke-kommersiell bruk med kommandoen . Dette sikrer overholdelse av EPPlus lisensvilkår. Deretter oppretter den en ny Excel-pakkeforekomst ved hjelp av , og legger til et nytt regneark kalt "Sheet1" ved hjelp av . Data legges til celler ved å angi verdiene direkte, for eksempel worksheet.Cells[1, 1].Value = "Hello"; tildeler verdien "Hei" til den første cellen i den første raden. Filen lagres deretter på disken med , fullfører prosessen for å lage Excel-fil.

Det andre skriptet bruker NPOI-biblioteket til å lage en Excel-fil. Det begynner med å initialisere en ny arbeidsbokforekomst for å lage .XLSX-filer med . Et nytt ark kalt "Sheet1" opprettes i arbeidsboken ved hjelp av . Rader og celler opprettes og fylles med data ved å ringe og row.CreateCell(0).SetCellValue("Hello");, henholdsvis. Den opprettede arbeidsboken skrives deretter til en filstrøm og lagres på disken ved hjelp av en pakket inn i en uttalelse for forsvarlig ressursforvaltning. Endelig, sender ut en suksessmelding til konsollen. Disse skriptene viser hvor kraftige og allsidige disse bibliotekene er for å generere Excel-filer i C# uten å måtte installere Microsoft Office.

Generer Excel-filer ved hjelp av EPPlus i C#

Dette skriptet demonstrerer å lage en Excel-fil ved å bruke EPPlus-biblioteket i 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!");
            }
        }
    }
}

Opprette Excel-filer med NPOI i C#

Dette skriptet viser hvordan du bruker NPOI-biblioteket til å lage en Excel-fil i 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!");
        }
    }
}

Opprette Excel-filer med ClosedXML i C#

Et annet utmerket bibliotek for å lage Excel-filer i C# uten å kreve Microsoft Office er ClosedXML. ClosedXML er et .NET-bibliotek for lesing, manipulering og skriving av Excel 2007+ (.XLSX)-filer. Den er intuitiv og enkel å bruke, noe som gjør den til en favoritt blant utviklere. ClosedXML lar deg lage Excel-filer med rike funksjoner, for eksempel formatering av celler, legge til formler og lage tabeller. For å begynne å bruke ClosedXML, må du installere det via NuGet. Etter oppsett kan du lage en ny Excel-arbeidsbok med bare noen få linjer med kode. Du starter for eksempel en ny arbeidsbok og legger til et regneark kalt "Sheet1" ved å bruke og kommandoer.

Data kan legges til celler med kommandoer som , og du kan formatere celler, legge til rammer og angi skriftstiler med enkle, lesbare kommandoer. Når dataene dine er angitt, lagrer du arbeidsboken til en fil ved hjelp av . ClosedXML støtter et bredt spekter av funksjoner, inkludert pivottabeller, betinget formatering og diagrammer, noe som gjør det til et kraftig verktøy for å lage komplekse Excel-dokumenter programmatisk. Denne fleksibiliteten sikrer at utviklere kan generere Excel-filer skreddersydd til deres spesifikke behov uten å stole på Microsoft Office-installasjon, og dermed forenkle distribusjon og distribusjon av applikasjoner.

  1. Hvordan installerer jeg EPPlus i prosjektet mitt?
  2. Du kan installere EPPlus ved å bruke NuGet Package Manager med kommandoen .
  3. Hva er forskjellen mellom EPPlus og NPOI?
  4. EPPlus er kjent for sin brukervennlighet og støtte for kun .XLSX-filer, mens NPOI støtter både .XLS- og .XLSX-formater, men har en brattere læringskurve.
  5. Kan ClosedXML håndtere store Excel-filer effektivt?
  6. Ja, ClosedXML kan håndtere store Excel-filer, men ytelsen kan variere basert på kompleksiteten til dataene og operasjonene som utføres.
  7. Er det mulig å lage diagrammer i Excel-filer ved hjelp av ClosedXML?
  8. Ja, ClosedXML støtter å lage ulike typer diagrammer i Excel-filer.
  9. Hvordan formaterer jeg celler ved hjelp av ClosedXML?
  10. Du kan formatere celler ved å bruke kommandoer som for å sette skriften til fet skrift.
  11. Kan jeg legge til formler i celler med EPPlus?
  12. Ja, du kan legge til formler til celler i EPPlus ved å bruke kommandoer som .
  13. Hvilke filformater støtter NPOI?
  14. NPOI støtter både .XLS- og .XLSX-filformater.
  15. Hvordan lagrer jeg en Excel-fil ved hjelp av EPPlus?
  16. Du kan lagre en Excel-fil ved å bruke kommandoen .
  17. Er ClosedXML gratis å bruke?
  18. Ja, ClosedXML er gratis å bruke og er lisensiert under MIT-lisensen.

Å lage Excel-filer i C# uten å kreve Microsoft Office-installasjon er en svært praktisk tilnærming for utviklere. Ved å bruke biblioteker som EPPlus, NPOI og ClosedXML, kan du enkelt generere Excel-regneark, og tilby et bredt spekter av funksjoner og tilpasningsmuligheter. Disse løsningene forenkler ikke bare utviklingsprosessen, men sikrer også at applikasjonene dine er mer bærbare og enklere å distribuere på tvers av forskjellige miljøer.