Jak wczytać istniejące arkusze kalkulacyjne w języku C#

Jak wczytać istniejące arkusze kalkulacyjne w języku C

This article was translated from English: Does it need improvement?
Translated
View the article in English

Wczytaj istniejące pliki Excel, CSV, TSV oraz ``csharp :path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-csv.cs method for full Excel support or LoadCSV() dla formatów CSV, umożliwiając płynną manipulację danymi i ich wyodrębnianie w aplikacjach .NET.

Format pliku CSV (Comma-Separated Values) służy do przechowywania danych tabelarycznych, w których wartości są oddzielone przecinkami, i jest powszechnie używany do wymiany danych. TSV (Tab-Separated Values) używa tabulatorów do oddzielania wartości, co jest preferowane, gdy dane zawierają przecinki. Dowiedz się więcej o konwersji formatów plików.

Klasa DataSet w platformie .NET firmy Microsoft jest częścią technologii ADO.NET (ActiveX Data Objects for .NET). Jest często używany w aplikacjach związanych z bazami danych i pozwala na pracę z danymi z różnych źródeł, takich jak bazy danych, XML i inne. IronXL zapewnia płynną integrację w zakresie importowania i eksportowania obiektów DataSet.

Dane zawarte w formatach plików Excel, takich jak XLSX, XLS, XLSM, XLTX, CSV i TSV, a także obiekty DataSet można załadować do arkusza kalkulacyjnego Excel using IronXL. Ta potężna funkcja sprawia, że IronXL jest niezbędnym narzędziem dla programistów pracujących z danymi arkuszy kalkulacyjnych w aplikacjach biznesowych, projektach analizy danych i zautomatyzowanych systemach raportowania.

Szybki start: Załaduj istniejący arkusz kalkulacyjny

Za pomocą jednej prostej metody można załadować istniejący plik Excel, CSV lub TSV do WorkBook za pomocą IronXL. Programiści mogą szybko rozpocząć edycję lub wyodrębnianie danych, wywołując WorkBook.Load(...) w celu uzyskania pełnej obsługi formatu Excel lub LoadCSV(...) przeznaczonego specjalnie dla formatów CSV. Aby uzyskać wyczerpującą dokumentację API, odwiedź stronę IronXL Dokumentacja API.

  1. Install IronXL with NuGet Package Manager

    PM > Install-Package IronXL.Excel
  2. Skopiuj i uruchom ten fragment kodu.

    IronXl.WorkBook workbook = IronXl.WorkBook.Load("sample.xlsx");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronXL w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer


Jak załadować pliki arkuszy kalkulacyjnych Excel w języku C#?

Użyj metody statycznej Load, aby załadować istniejący skoroszyt programu Excel. Metoda obsługuje formaty plików XLSX, XLS, XLSM, XLTX, CSV i TSV. Jeśli skoroszyt jest chroniony hasłem, należy przekazać hasło jako drugi parametr metody. Metoda akceptuje również dane z skoroszytu jako tablicę bajtów lub strumień, gdzie można odpowiednio użyć dedykowanych metod FromByteArray i FromStream.

Możliwości ładowania IronXL zostały zaprojektowane z myślą o różnych scenariuszach w rzeczywistych zastosowaniach. Niezależnie od tego, czy przetwarzasz pliki przesłane przez użytkowników, odczytujesz dane ze strumieni sieciowych, czy pracujesz z zaszyfrowanymi dokumentami, biblioteka zapewnia spójny i niezawodny interfejs. Metoda Load automatycznie wykrywa format pliku na podstawie rozszerzenia i zawartości, dzięki czemu jest wszechstronna w różnych zastosowaniach.

Jakie formaty plików mogę wczytać?

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-spreadsheet.cs
using IronXL;

// Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
Imports IronXL

' Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
$vbLabelText   $csharpLabel

Elastyczność w zakresie ładowania wielu formatów plików oznacza, że można pracować ze starszymi plikami Excel (XLS), nowoczesnymi skoroszytami Excel (XLSX), skoroszytami z obsługą makr (XLSM) oraz plikami szablonów (XLTX). Ta kompatybilność zapewnia płynną migrację ze starszych systemów, jednocześnie obsługując nowoczesne funkcje programu Excel. Aby uzyskać więcej informacji na temat tworzenia nowych arkuszy kalkulacyjnych, zapoznaj się z naszym obszernym przewodnikiem.

Jak postępować z plikami chronionymi hasłem?

Praca z danymi wrażliwymi często wymaga ochrony hasłem. IronXL ułatwia ładowanie skoroszytów chronionych hasłem poprzez podanie hasła jako parametru:

// Load password-protected Excel file
WorkBook protectedWorkBook = WorkBook.Load("protected.xlsx", "myPassword123");

// Work with the workbook normally
WorkSheet sheet = protectedWorkBook.DefaultWorkSheet;
sheet["B2"].Value = "Updated secure data";

// Save with password protection
protectedWorkBook.SaveAs("updated_protected.xlsx");
// Load password-protected Excel file
WorkBook protectedWorkBook = WorkBook.Load("protected.xlsx", "myPassword123");

// Work with the workbook normally
WorkSheet sheet = protectedWorkBook.DefaultWorkSheet;
sheet["B2"].Value = "Updated secure data";

// Save with password protection
protectedWorkBook.SaveAs("updated_protected.xlsx");
' Load password-protected Excel file
Dim protectedWorkBook As WorkBook = WorkBook.Load("protected.xlsx", "myPassword123")

' Work with the workbook normally
Dim sheet As WorkSheet = protectedWorkBook.DefaultWorkSheet
sheet("B2").Value = "Updated secure data"

' Save with password protection
protectedWorkBook.SaveAs("updated_protected.xlsx")
$vbLabelText   $csharpLabel

A co z ładowaniem z tablic bajtów lub strumieni?

W nowoczesnych aplikacjach pliki często pochodzą z różnych źródeł, takich jak pliki przesłane przez Internet, odpowiedzi API lub obiekty BLOB z baz danych. IronXL elegancko radzi sobie z tymi scenariuszami:

// Loading from byte array
byte[] excelBytes = File.ReadAllBytes("sample.xlsx");
WorkBook workBookFromBytes = WorkBook.FromByteArray(excelBytes);

// Loading from stream
using (FileStream stream = new FileStream("sample.xlsx", FileMode.Open))
{
    WorkBook workBookFromStream = WorkBook.FromStream(stream);

    // Process the workbook
    var sheet = workBookFromStream.DefaultWorkSheet;
    Console.WriteLine($"Sheet has {sheet.RowCount} rows");
}

// Loading from MemoryStream (common in web applications)
using (MemoryStream memStream = new MemoryStream(excelBytes))
{
    WorkBook workBookFromMemory = WorkBook.FromStream(memStream);
}
// Loading from byte array
byte[] excelBytes = File.ReadAllBytes("sample.xlsx");
WorkBook workBookFromBytes = WorkBook.FromByteArray(excelBytes);

// Loading from stream
using (FileStream stream = new FileStream("sample.xlsx", FileMode.Open))
{
    WorkBook workBookFromStream = WorkBook.FromStream(stream);

    // Process the workbook
    var sheet = workBookFromStream.DefaultWorkSheet;
    Console.WriteLine($"Sheet has {sheet.RowCount} rows");
}

// Loading from MemoryStream (common in web applications)
using (MemoryStream memStream = new MemoryStream(excelBytes))
{
    WorkBook workBookFromMemory = WorkBook.FromStream(memStream);
}
Imports System.IO

' Loading from byte array
Dim excelBytes As Byte() = File.ReadAllBytes("sample.xlsx")
Dim workBookFromBytes As WorkBook = WorkBook.FromByteArray(excelBytes)

' Loading from stream
Using stream As New FileStream("sample.xlsx", FileMode.Open)
    Dim workBookFromStream As WorkBook = WorkBook.FromStream(stream)

    ' Process the workbook
    Dim sheet = workBookFromStream.DefaultWorkSheet
    Console.WriteLine($"Sheet has {sheet.RowCount} rows")
End Using

' Loading from MemoryStream (common in web applications)
Using memStream As New MemoryStream(excelBytes)
    Dim workBookFromMemory As WorkBook = WorkBook.FromStream(memStream)
End Using
$vbLabelText   $csharpLabel

Dłączego warto stosować specjalną metodę dla plików CSV?

Chociaż metoda Load może odczytywać wszystkie dostępne formaty plików, w celu optymalnej obsługi należy używać metody LoadCSV przeznaczonej specjalnie dla formatów plików CSV. Pliki CSV mają unikalne cechy, które wymagają specjalistycznego przetwarzania, takiego jak wykrywanie separatorów, obsługa kodowania i wnioskowanie o typach danych. Jest to szczególnie przydatne w przypadku międzynarodowych formatów danych lub gdy pliki CSV używają niestandardowych separatorów, takich jak średniki lub pionowe kreski.

Kiedy LoadCSV jest lepsze niż Load?

Metoda LoadCSV zapewnia lepszą kontrolę nad parsowaniem plików CSV, dzięki czemu idealnie nadaje się do sytuacji, w których trzeba określić niestandardowe separatory, obsługiwać różne kodowania lub pracować z dużymi plikami CSV. Jest to szczególnie przydatne w przypadku międzynarodowych formatów danych lub gdy pliki CSV używają niestandardowych separatorów, takich jak średniki lub pionowe kreski.

Jak LoadCSV radzi sobie ze znakami specjalnymi?

Metoda LoadCSV automatycznie obsługuje różne kodowania, w tym UTF-8, UTF-16 i ASCII, zapewniając prawidłowe zachowanie znaków specjalnych, liter z akcentami i symboli międzynarodowych. Ma to kluczowe znaczenie podczas pracy z danymi wielojęzycznymi lub notacją naukową. Dowiedz się więcej o tworzeniu plików CSV w .NET w celu kompleksowego zarządzania przepływem pracy z plikami CSV.


Jak załadować obiekty DataSet do programu Excel?

Klasa DataSet w Microsoft .NET służy do zarządzania danymi i pracy z nimi w odłączonej reprezentacji w pamięci. Ten DataSet można załadować do skoroszytu za pomocą metody LoadWorkSheetsFromDataSet. W poniższym przykładzie kodu tworzony jest pusty DataSet; Jednak częściej instancjonuje się DataSet z zapytania do bazy danych.

Dlaczego warto przekonwertować DataSet do formatu Excel?

Konwersja obiektów DataSet do formatu Excel jest niezbędna do tworzenia raportów, eksportu danych i tworzenia przyjaznych dla użytkownika prezentacji danych. Użytkownicy biznesowi często preferują formaty Excel do analizy danych, a zautomatyzowane raporty często wymagają przekształcenia wyników z baz danych do formatów arkuszy kalkulacyjnych. Ta konwersja umożliwia korzystanie z funkcji, takich jak formatowanie warunkówe, tworzenie wykresów i stosowanie formuł, które nie są dostępne w surowych obiektach DataSet.

Co dzieje się z relacjami DataSet w programie Excel?

Podczas ładowania DataSet z wieloma powiązanymi tabelami, IronXL tworzy oddzielne arkusze dla każdego DataTable w DataSet. Relacje między tabelami są zachowane dzięki spójnym wartościom kluczy, co pozwala użytkownikom zachować integralność danych podczas pracy z wyeksportowanym plikiem Excel. Dzięki temu idealnie nadaje się do eksportowania złożonych schematów baz danych przy zachowaniu integralności referencyjnej.

Czy mogę załadować wiele tabel z DataSet?

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-dataset.cs
using IronXL;
using System.Data;

// Create dataset
DataSet dataSet = new DataSet();

// Create workbook
WorkBook workBook = WorkBook.Create();

// Load DataSet
WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook);
Imports IronXL
Imports System.Data

' Create dataset
Private dataSet As New DataSet()

' Create workbook
Private workBook As WorkBook = WorkBook.Create()

' Load DataSet
WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook)
$vbLabelText   $csharpLabel

W przypadku bardziej zaawansowanych scenariuszy związanych z integracją baz danych zapoznaj się z naszym przewodnikiem dotyczącym Excel do SQL za pośrednictwem System.Data.DataSet, który pokazuje dwukierunkowy przepływ danych między programem Excel a bazami danych.

Możliwość wczytywania różnych źródeł danych do formatu Excel sprawia, że IronXL jest nieocenionym narzędziem dla programistów .NET. Niezależnie od tego, czy tworzysz systemy raportowania, narzędzia do migracji danych czy aplikacje do analizy biznesowej, możliwości ładowania stanowią podstawę do zaawansowanej obróbki arkuszy kalkulacyjnych. Aby uzyskać więcej przykładów i zapoznać się z zaawansowanymi technikami, odwiedź naszą sekcję zawierającą obszerne samouczki.

Często Zadawane Pytania

Jakie formaty plikow moge ladowac do arkuszy kalkulacyjnych C#?

IronXL obsługuje ladowanie wielu formatow plikow w tym pliki XLSX, XLS, XLSM, XLTX, CSV i TSV, a takze obiekty DataSet. To kompleksowe wsparcie formatow sprawia, ze IronXL jest odpowiedni do roznych potrzeb manipulacji danymi arkuszy w aplikacjach .NET.

Jak zaladowac plik Excel w C#?

Mozesz zaladowac plik Excel uzywajac metody WorkBook.Load() IronXL za pomoca jednej linii kodu: IronXl.WorkBook workbook = IronXl.WorkBook.Load("sample.xlsx"). Dla plikow CSV mozesz uzyc metody LoadCSV().

Czy moge ladowac pliki Excel zabezpieczone haslem?

Tak, IronXL obsługuje ladowanie workbookow zabezpieczonych haslem. Po prostu przekaż haslo jako drugi parametr do metody Load podczas otwierania zaszyfrowanych plikow Excel.

Jaka jest roznica miedzy formatami plikow CSV a TSV?

CSV (Comma-Separated Values) uzywa przecinkow do oddzielania wartosci i jest powszechnie stosowany do wymiany danych. TSV (Tab-Separated Values) uzywa zamiast tego tabulatorow, co jest preferowane, gdy twoje dane zawieraja przecinki. IronXL obsługuje ladowanie obu formatow bezproblemowo.

Czy moge ladowac dane Excel z innych zrodel niz pliki?

Tak, IronXL moze ladowac dane workbook z wielu zrodel, w tym tablic bajtow uzywajac metody FromByteArray oraz strumieni uzywajac metody FromStream. Ta elastycznosc umożliwia przetwarzanie plikow z przeslan, strumieni sieciowych lub pamieci.

Jak pracowac z obiektami DataSet w arkuszach kalkulacyjnych?

IronXL udostepnia metode LoadWorkSheetsFromDataSet do importu danych z obiektow ADO.NET DataSet do arkuszy kalkulacyjnych Excel. Ta integracja umożliwia bezproblemowy transfer danych miedzy aplikacjami baz danych a workbookami Excel.

Jakie sa glówne kroki do ladowania i eksportu danych arkuszy kalkulacyjnych?

Przeplyw pracy obejmuje: 1) Pobranie biblioteki IronXL, 2) Przygotowanie pliku lub DataSet, 3) Uzycie metody Load do stworzenia obiektu workbook, 4) Uzycie LoadWorkSheetsFromDataSet do importu DataSet, i 5) Eksport workbooku wedlug potrzeb.

Czy istnieje kompleksowa dokumentacja dostepna dla metod ladowania?

Tak, IronXL dostarcza kompletne dokumentacje API, wlaczajac szczegolowe informacje o wszystkich metodach ladowania i ich parametrach w Dokumentacji API IronXL, pomagajac deweloperom skutecznie implementowac funkcjonalnosc ladowania arkuszy kalkulacyjnych.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 2,052,917 | Wersja: 2026.6 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronXL.Excel
uruchom próbkę zobacz, jak Twoje dane stają się arkuszem.