Tworzenie plików Excel w języku C# bez instalowania pakietu Microsoft Office

Tworzenie plików Excel w języku C# bez instalowania pakietu Microsoft Office
Tworzenie plików Excel w języku C# bez instalowania pakietu Microsoft Office

Bezproblemowo generuj pliki Excel w języku C#

Tworzenie plików Excel (.XLS i .XLSX) w C# może być kluczowym wymogiem dla wielu aplikacji. Jednak poleganie na instalacji pakietu Microsoft Office na serwerze lub komputerze klienckim może być niepraktyczne i kłopotliwe.

Na szczęście dostępne są solidne biblioteki i narzędzia, które umożliwiają programistom programowe generowanie arkuszy kalkulacyjnych Excel w języku C# bez konieczności korzystania z pakietu Microsoft Office. W tym artykule omówiono różne metody i biblioteki umożliwiające skuteczne osiągnięcie tego celu.

Komenda Opis
ExcelPackage.LicenseContext = LicenseContext.NonCommercial; Ustawia kontekst licencji EPPlus na użytek niekomercyjny.
var worksheet = package.Workbook.Worksheets.Add("Sheet1"); Tworzy nowy arkusz o nazwie „Arkusz 1” w pakiecie Excel przy użyciu EPPlus.
worksheet.Cells[1, 1].Value = "Hello"; Ustawia wartość komórki w wierszu 1 i kolumnie 1 na „Hello” przy użyciu EPPlus.
IWorkbook workbook = new XSSFWorkbook(); Inicjuje nową instancję skoroszytu do tworzenia plików .XLSX przy użyciu NPOI.
ISheet sheet = workbook.CreateSheet("Sheet1"); Tworzy w skoroszycie nowy arkusz o nazwie „Arkusz1” przy użyciu funkcji NPOI.
IRow row = sheet.CreateRow(0); Tworzy nowy wiersz w arkuszu o indeksie 0 przy użyciu funkcji NPOI.
row.CreateCell(0).SetCellValue("Hello"); Ustawia wartość komórki w wierszu 0 i kolumnie 0 na „Hello” przy użyciu NPOI.

Zrozumienie tworzenia plików Excel w języku C#

Powyższe skrypty demonstrują, jak tworzyć pliki Excel (.XLS i .XLSX) w języku C# bez instalowania pakietu Microsoft Office, wykorzystując dwie popularne biblioteki: EPPlus i NPOI. Pierwszy skrypt wykorzystuje bibliotekę EPPlus. Rozpoczyna się od ustawienia kontekstu licencji EPPlus na użytek niekomercyjny za pomocą polecenia ExcelPackage.LicenseContext = LicenseContext.NonCommercial;. Zapewnia to zgodność z warunkami licencji EPPlus. Następnie tworzy nową instancję pakietu Excel za pomocą using (var package = new ExcelPackage())i dodaje nowy arkusz o nazwie „Arkusz1” za pomocą var worksheet = package.Workbook.Worksheets.Add("Sheet1");. Dane są dodawane do komórek poprzez bezpośrednie ustawienie ich wartości, na przykład worksheet.Cells[1, 1].Value = "Hello"; przypisuje wartość „Hello” do pierwszej komórki w pierwszym wierszu. Plik jest następnie zapisywany na dysku za pomocą package.SaveAs(new FileInfo("example.xlsx"));, kończąc proces tworzenia pliku Excel.

Drugi skrypt wykorzystuje bibliotekę NPOI do utworzenia pliku Excel. Rozpoczyna się od zainicjowania nowej instancji skoroszytu do tworzenia plików .XLSX IWorkbook workbook = new XSSFWorkbook();. W skoroszycie tworzony jest nowy arkusz o nazwie „Arkusz1” za pomocą polecenia ISheet sheet = workbook.CreateSheet("Sheet1");. Wiersze i komórki są tworzone i wypełniane danymi poprzez wywołanie IRow row = sheet.CreateRow(0); I row.CreateCell(0).SetCellValue("Hello");odpowiednio. Utworzony skoroszyt jest następnie zapisywany w strumieniu plików i zapisywany na dysku za pomocą pliku FileStream zawinięte w A using oświadczenie o właściwym zarządzaniu zasobami. Wreszcie, Console.WriteLine("Excel file created successfully!"); wyświetla komunikat o powodzeniu na konsoli. Te skrypty pokazują, jak potężne i wszechstronne są te biblioteki do generowania plików Excel w języku C# bez konieczności instalowania pakietu Microsoft Office.

Generowanie plików Excel przy użyciu EPPlus w C#

Ten skrypt demonstruje tworzenie pliku Excel przy użyciu biblioteki EPPlus w języku 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!");
            }
        }
    }
}

Tworzenie plików Excel za pomocą NPOI w C#

Ten skrypt pokazuje, jak używać biblioteki NPOI do tworzenia pliku Excel w języku 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!");
        }
    }
}

Tworzenie plików Excel za pomocą ClosedXML w C#

Kolejną doskonałą biblioteką do tworzenia plików Excel w języku C# bez konieczności korzystania z pakietu Microsoft Office jest ClosedXML. ClosedXML to biblioteka .NET do odczytu, manipulowania i zapisywania plików Excel 2007+ (.XLSX). Jest intuicyjny i łatwy w obsłudze, co czyni go ulubionym narzędziem wśród programistów. ClosedXML umożliwia tworzenie plików Excel z bogatymi funkcjami, takimi jak formatowanie komórek, dodawanie formuł i tworzenie tabel. Aby rozpocząć korzystanie z ClosedXML, musisz zainstalować go za pomocą NuGet. Po skonfigurowaniu możesz utworzyć nowy skoroszyt programu Excel za pomocą zaledwie kilku wierszy kodu. Na przykład inicjujesz nowy skoroszyt i dodajesz arkusz o nazwie „Arkusz 1”, używając metody var workbook = new XLWorkbook(); I var worksheet = workbook.Worksheets.Add("Sheet1"); polecenia.

Dane można dodawać do komórek za pomocą poleceń takich jak worksheet.Cell(1, 1).Value = "Hello";i możesz formatować komórki, dodawać obramowania i ustawiać style czcionek za pomocą prostych, czytelnych poleceń. Po ustawieniu danych możesz zapisać skoroszyt w pliku za pomocą workbook.SaveAs("example.xlsx");. ClosedXML obsługuje szeroką gamę funkcji, w tym tabele przestawne, formatowanie warunkowe i wykresy, co czyni go potężnym narzędziem do programowego tworzenia złożonych dokumentów Excel. Ta elastyczność gwarantuje, że programiści mogą generować pliki Excel dostosowane do ich konkretnych potrzeb bez polegania na instalacji pakietu Microsoft Office, co upraszcza wdrażanie i dystrybucję aplikacji.

Często zadawane pytania dotyczące tworzenia plików Excel w języku C#

  1. Jak zainstalować EPPlus w moim projekcie?
  2. Możesz zainstalować EPPlus za pomocą Menedżera pakietów NuGet za pomocą polecenia Install-Package EPPlus.
  3. Jaka jest różnica między EPPlus a NPOI?
  4. EPPlus jest znany ze swojej łatwości obsługi i obsługi wyłącznie plików .XLSX, podczas gdy NPOI obsługuje zarówno formaty .XLS, jak i .XLSX, ale wymaga bardziej stromej nauki.
  5. Czy ClosedXML może efektywnie obsługiwać duże pliki Excel?
  6. Tak, ClosedXML może obsługiwać duże pliki Excel, ale wydajność może się różnić w zależności od złożoności danych i wykonywanych operacji.
  7. Czy można tworzyć wykresy w plikach Excel przy użyciu ClosedXML?
  8. Tak, ClosedXML obsługuje tworzenie różnych typów wykresów w plikach Excel.
  9. Jak sformatować komórki przy użyciu ClosedXML?
  10. Możesz formatować komórki za pomocą poleceń takich jak worksheet.Cell(1, 1).Style.Font.Bold = true; aby ustawić czcionkę na pogrubioną.
  11. Czy mogę dodawać formuły do ​​komórek za pomocą EPPlus?
  12. Tak, możesz dodawać formuły do ​​komórek w EPPlus za pomocą poleceń takich jak worksheet.Cells[1, 1].Formula = "SUM(A1:A10)";.
  13. Jakie formaty plików obsługuje NPOI?
  14. NPOI obsługuje formaty plików .XLS i .XLSX.
  15. Jak zapisać plik Excel za pomocą EPPlus?
  16. Za pomocą polecenia możesz zapisać plik Excel package.SaveAs(new FileInfo("example.xlsx"));.
  17. Czy korzystanie z ClosedXML jest bezpłatne?
  18. Tak, korzystanie z ClosedXML jest bezpłatne i podlega licencji MIT.

Końcowe przemyślenia na temat tworzenia plików Excel w języku C#

Tworzenie plików Excel w języku C# bez konieczności instalacji pakietu Microsoft Office jest bardzo praktycznym podejściem dla programistów. Korzystając z bibliotek takich jak EPPlus, NPOI i ClosedXML, możesz z łatwością generować arkusze kalkulacyjne Excel, oferując szeroki zakres funkcji i opcji dostosowywania. Rozwiązania te nie tylko upraszczają proces programowania, ale także zapewniają większą przenośność aplikacji i łatwiejsze wdrażanie w różnych środowiskach.