Εισαγωγή
Aspose.Cells FOSS for .NET είναι μια καθαρά διαχειριζόμενη κώδικα, αδειοδοτημένη με MIT βιβλιοθήκη για ανάγνωση, εγγραφή,
και χειρισμό βιβλίων εργασίας Excel .xlsx χωρίς καμία εξάρτηση από το Microsoft Office. Εγκατεστημένη ως
το Aspose.Cells_FOSS πακέτο NuGet, ενσωματώνεται σε οποιοδήποτε έργο .NET — εφαρμογές κονσόλας, web
APIs, background workers και serverless functions.
Αυτή η ανάρτηση παρέχει έναν οδηγό χαρακτηριστικό-κατά-χαρακτηριστικό του δημόσιου API, δείχνοντας τι είναι δυνατόν και πώς να καλέσετε κάθε δυνατότητα από κώδικα C#.
Επισκόπηση χαρακτηριστικού
Κύκλος ζωής του βιβλίου εργασίας και του φύλλου εργασίας
Το σημείο εισόδου για κάθε λειτουργία είναι η κλάση Workbook. Δημιουργήστε μία από το μηδέν με new Workbook(), ή φορτώστε μια υπάρχουσα .xlsx με new Workbook(filePath) ή new Workbook(stream). Περιηγηθείτε στα φύλλα μέσω Workbook.Worksheets, ορίστε Worksheet.Name και Worksheet.VisibilityType, και αποθηκεύστε με Workbook.Save(). Για κατεστραμμένα αρχεία, περάστε μια παρουσία LoadOptions με TryRepairPackage = true και TryRepairXml = true.
using Aspose.Cells_FOSS;
var options = new LoadOptions
{
TryRepairPackage = true,
TryRepairXml = true,
};
try
{
_ = new Workbook("sample.xlsx", options);
}
catch (WorkbookLoadException exception)
{
Console.WriteLine(exception.Message);
}
Δεδομένα Κελιών και Τύποι
Γράψτε τιμές σε κελιά με Cell.PutValue() — οι υπερφορτώσεις δέχονται string, int, double,
decimal, bool και DateTime. Διαβάστε τις τιμές πίσω μέσω Cell.Value, Cell.StringValue και
Cell.Formula. Ορίστε τύπους Excel με την ιδιότητα Cell.Formula; η συμβολοσειρά τύπου
διατηρείται κατά την αποθήκευση και επιβιώνει σε κύκλο επαναφόρτωσης.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Hello");
sheet.Cells["B1"].PutValue(123);
sheet.Cells["C1"].Formula = "=B1*2";
workbook.Save("hello.xlsx");
var loaded = new Workbook("hello.xlsx");
Console.WriteLine(loaded.Worksheets[0].Cells["C1"].Formula);
Console.WriteLine(loaded.Worksheets[0].Cells["C1"].StringValue);
Στυλ κελιού
Εφαρμόστε Style αντικείμενα για να ελέγξετε τη γραμματοσειρά, τη γέμισμα, τα περιγράμματα, τη μορφή αριθμών και την ευθυγράμμιση.
Ανακτήστε το τρέχον στυλ με Cell.GetStyle(), τροποποιήστε το, και στη συνέχεια υποβάλετε μεCell.SetStyle(). Για γεμίσματα φόντου, ορίστε Style.Pattern = FillPattern.Solid και εκχωρήστε έναColor σε Style.ForegroundColor. Χρησιμοποιήστε Cells.Merge() για να επεκτείνετε περιοχές κελιών.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var cell = workbook.Worksheets[0].Cells["A1"];
cell.PutValue("Styled");
var style = cell.GetStyle();
style.Font.Bold = true;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 241, 196, 15);
cell.SetStyle(style);
Console.WriteLine($"{cell.StringValue} / Bold={cell.GetStyle().Font.Bold}");
Μορφοποίηση υπό όρους
Συνδέστε κανόνες μορφοποίησης υπό όρους σε περιοχές κελιών μέσω ConditionalFormattingCollection.
Οι κανόνες υποστηρίζουν FormatConditionType.CellValue, Expression, ColorScale, DataBar καιIconSet. Χρησιμοποιήστε OperatorType για να καθορίσετε τελεστές σύγκρισης (Between, Equal,GreaterThan κ.λπ.), εκχωρήστε ένα Style στα αντίστοιχα κελιά και διαμορφώστε την προτεραιότητα και
τη συμπεριφορά stop‑if‑true ανά κανόνα.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
var cfCollection = sheet.ConditionalFormattings[sheet.ConditionalFormattings.Add()];
cfCollection.AddArea(CellArea.CreateCellArea("A1", "A10"));
var rule = cfCollection[cfCollection.AddCondition(
FormatConditionType.CellValue, OperatorType.Between, "3", "7")];
var style = rule.Style;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 255, 199, 206);
style.Font.Bold = true;
rule.Style = style;
workbook.Save("conditional-formatting.xlsx");
Επικύρωση Δεδομένων
Προσθέστε περιορισμούς εισόδου σε κελιά χρησιμοποιώντας Worksheet.Validations. Υποστηριζόμενοι τύποι επικύρωσης
περιλαμβάνουν ValidationType.List, Decimal, Custom, και άλλα. Διαμορφώστε προτροπές εισόδου
(InputTitle, InputMessage) και μηνύματα σφάλματος (ErrorTitle, ErrorMessage,
ValidationAlertType). Χρησιμοποιήστε CellArea.CreateCellArea() για να ορίσετε το επικυρωμένο εύρος και
Validation.AddArea() για να εφαρμόσετε έναν κανόνα σε πρόσθετα εύρη.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "Validation Sheet";
var listIdx = sheet.Validations.Add(CellArea.CreateCellArea("A1", "A3"));
var listVal = sheet.Validations[listIdx];
listVal.Type = ValidationType.List;
listVal.Formula1 = "\"Open,Closed\"";
listVal.IgnoreBlank = true;
listVal.InCellDropDown = true;
listVal.ShowInput = true;
listVal.InputTitle = "Status";
listVal.InputMessage = "Pick a status";
listVal.ShowError = true;
listVal.ErrorTitle = "Invalid";
listVal.ErrorMessage = "Choose from the list";
workbook.Save("validations-sample.xlsx");
Διαμόρφωση Σελίδας και Επιλογές Εκτύπωσης
Διαμορφώστε τη διάταξη εκτύπωσης μέσω Worksheet.PageSetup. Ορίστε τα περιθώρια (LeftMarginInch,
RightMarginInch, TopMarginInch, BottomMarginInch), Orientation, PaperSize, κλίμακα,
περιοχή εκτύπωσης, γραμμές και στήλες τίτλου, κεφαλίδες και υποσέλιδα, και αλλαγές σελίδας. Όλες οι ρυθμίσεις παραμένουν
μετά από αποθήκευση-φόρτωση.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "Print Sheet";
sheet.Cells["A1"].PutValue("Title");
var pageSetup = sheet.PageSetup;
pageSetup.Orientation = PageOrientationType.Landscape;
pageSetup.PaperSize = PaperSizeType.PaperA4;
pageSetup.PrintArea = "$A$1:$C$10";
pageSetup.PrintTitleRows = "$1:$2";
pageSetup.LeftHeader = "Left Header";
pageSetup.CenterFooter = "Center Footer";
pageSetup.PrintGridlines = true;
pageSetup.CenterHorizontally = true;
workbook.Save("page-setup-sample.xlsx");
Ρυθμίσεις φύλλου εργασίας και προστασία
Ελέγξτε την εμφάνιση ανά φύλλο με Worksheet.ShowGridlines, ShowRowColumnHeaders,
ShowZeros, RightToLeft, Zoom, και TabColor. Προστατέψτε τα φύλλα με Worksheet.Protect()
και διαμορφώστε λεπτομερείς Protection σημαίες (Objects, FormatCells, InsertRows,
AutoFilter, SelectLockedCells). Διαχειριστείτε το ύψος γραμμής, το πλάτος στήλης, τις κρυφές γραμμές/στήλες, και
τις συγχωνευμένες περιοχές μέσω Cells.Rows, Cells.Columns, και Cells.Merge().
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var layout = workbook.Worksheets[0];
layout.Name = "Layout";
layout.VisibilityType = VisibilityType.Hidden;
layout.TabColor = Color.FromArgb(255, 34, 68, 102);
layout.ShowGridlines = false;
layout.Zoom = 85;
layout.Protect();
layout.Protection.FormatCells = true;
layout.Protection.InsertRows = true;
layout.Cells["A1"].PutValue("Merged");
layout.Cells.Rows[1].Height = 22.5d;
layout.Cells.Columns[0].Width = 18.25d;
layout.Cells.Merge(0, 0, 2, 2);
workbook.Save("worksheet-settings-sample.xlsx");
Υπερσύνδεσμοι και Ονομασμένες Περιοχές
Προσθέστε εξωτερικούς, εσωτερικούς και mailto: υπερσυνδέσμους μέσω HyperlinkCollection.Add().
Ορίστε Hyperlink.TextToDisplay και Hyperlink.ScreenTip για ετικέτες ορατές από τον χρήστη.
Ορίστε ονομαστικές περιοχές σε επίπεδο βιβλίου εργασίας ή φύλλου χρησιμοποιώντας DefinedNameCollection.Add() — οι ονομαστικές περιοχές λειτουργούν ως σταθερές αγκύλες τύπων και πηγές δεδομένων γραφημάτων που παραμένουν μετά την επαναφόρτωση του αρχείου.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Docs");
var link = sheet.Hyperlinks[sheet.Hyperlinks.Add("A1", 1, 1, "https://example.com/docs")];
link.TextToDisplay = "Docs";
link.ScreenTip = "External documentation";
var name = workbook.DefinedNames[workbook.DefinedNames.Add("PrimaryRange", "='Sheet1'!$A$1:$D$5")];
name.Comment = "Primary data range";
workbook.Save("hyperlinks-names.xlsx");
Console.WriteLine("Hyperlinks: " + sheet.Hyperlinks.Count);
Console.WriteLine("Defined names: " + workbook.DefinedNames.Count);
Γρήγορη εκκίνηση
dotnet add package Aspose.Cells_FOSS
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Hello");
sheet.Cells["B1"].PutValue(123);
sheet.Cells["C1"].Formula = "=B1*2";
workbook.Save("output.xlsx");
Υποστηριζόμενες μορφές
| Μορφή | Επέκταση | Ανάγνωση | Εγγραφή |
|---|---|---|---|
| Xlsx | .xlsx | ✓ | ✓ |
| Auto | (διάφορα) | ✓ | — |
Ανοιχτός Κώδικας & Αδειοδότηση
Το Aspose.Cells FOSS για .NET δημοσιεύεται υπό την άδεια MIT και διανέμεται μέσω του NuGet ως
Aspose.Cells_FOSS. Είναι κατάλληλο για έργα ανοιχτού κώδικα και εμπορικά έργα εξίσου.