So arbeiten Sie mit den Kernarbeitsbuch-Einstellungen in .NET
Aspose.Cells FOSS für .NET stellt die arbeitsmappenbezogene Konfiguration über Workbook.Settings (Locale und Datumssystem), Workbook.DocumentProperties (Autor-Metadaten), Workbook.LoadDiagnostics (Reparaturbericht) und SaveOptions (Speicherverhalten) bereit. Installieren Sie es mit einem einzigen dotnet add package-Befehl.
Schritt-für-Schritt-Anleitung
Schritt 1: Paket installieren
dotnet add package Aspose.Cells.FOSSSchritt 2: Namespace importieren
using Aspose.Cells_FOSS;
using System.Globalization;Schritt 3: WorkbookSettings konfigurieren
Workbook.Settings gibt ein WorkbookSettings-Objekt zurück. Setzen Sie Date1904 = true für macOS-hergestellte Dateien, die das 1904-Datumsystem verwenden. Setzen Sie Culture, um die Gebietsschema für Zahlen- und Datumsparsen zu steuern.
using Aspose.Cells_FOSS;
using System.Globalization;
var wb = new Workbook();
wb.Settings.Date1904 = false;
wb.Settings.Culture = new CultureInfo("en-US");
wb.Worksheets[0].Cells["A1"].PutValue("Settings configured");
wb.Save("settings.xlsx");
var loaded = new Workbook("settings.xlsx");
Console.WriteLine("Date1904: " + loaded.Settings.Date1904);Schritt 4: Dokumenteigenschaften festlegen
Workbook.DocumentProperties stellt Title, Subject, Author, Keywords, Comments, Category, Company und Manager als direkte String-Eigenschaften bereit.
using Aspose.Cells_FOSS;
var wb = new Workbook();
wb.DocumentProperties.Title = "Quarterly Report";
wb.DocumentProperties.Author = "Reporting Team";
wb.DocumentProperties.Company = "Contoso Ltd";
wb.DocumentProperties.Keywords = "quarterly, sales, 2026";
wb.Save("properties.xlsx");
var loaded = new Workbook("properties.xlsx");
Console.WriteLine("Title: " + loaded.DocumentProperties.Title);
Console.WriteLine("Author: " + loaded.DocumentProperties.Author);Schritt 5: SaveOptions verwenden
Workbook.Save(path, SaveOptions) akzeptiert ein SaveOptions-Objekt, um die Ausgabe anzupassen. Wichtige Eigenschaften: UseSharedStrings (verringert die Dateigröße bei Tabellen mit wiederholten Zeichenketten), ValidateBeforeSave (führt vor dem Schreiben eine Validierung durch) und CompactStyles (entfernt ungenutzte Stile).
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
for (var i = 0; i < 50; i++)
ws.Cells[i, 0].PutValue("Repeated text");
var opts = new SaveOptions
{
UseSharedStrings = true,
ValidateBeforeSave = true,
CompactStyles = true,
};
wb.Save("compact.xlsx", opts);
Console.WriteLine("Saved with SaveOptions.");Schritt 6: LoadDiagnostics nach Reparatur lesen
Nach dem Laden mit TryRepairPackage = true prüfen Sie Workbook.LoadDiagnostics, um festzustellen, ob Reparaturen durchgeführt wurden.
using Aspose.Cells_FOSS;
var opts = new LoadOptions { TryRepairPackage = true, TryRepairXml = true };
var wb = new Workbook("file.xlsx", opts);
var diag = wb.LoadDiagnostics;
Console.WriteLine("HasRepairs: " + diag.HasRepairs);
Console.WriteLine("HasDataLossRisk: " + diag.HasDataLossRisk);
foreach (var entry in diag.Issues)
Console.WriteLine($" [{entry.Severity}] {entry.Code}: {entry.Message}");Häufige Probleme und Lösungen
WorkbookSaveException when ValidateBeforeSave = true. Die Arbeitsmappe enthält eine strukturelle Inkonsistenz. Deaktivieren ValidateBeforeSave temporär, um die Datei zu speichern und zu untersuchen, dann den fehlerhaften Inhalt zu korrigieren.
Dokumenteigenschaften nicht im Datei-Info-Panel von Excel sichtbar. Stellen Sie sicher, dass Sie Eigenschaften setzen auf Workbook.DocumentProperties, nicht Workbook.Properties. Letzteres enthält Anzeige-Flags, keine Metadaten-Zeichenketten.
Date1904 = true verursacht, dass Datumswerte verschoben werden. Date1904 ändert den für Datum-Seriennummern verwendeten Ausgangspunkt. Setzen Sie es nur auf true für Dateien, die aus macOS Excel stammen und das 1904-Datumsystem aktiviert haben; das Mischen von Systemen verursacht Fehler von 1462Tagen.
Häufig gestellte Fragen
Was ist der Unterschied zwischen WorkbookSettings und WorkbookProperties?
WorkbookSettings (via Workbook.Settings) enthält Konfigurationswerte wie Date1904 und Culture. WorkbookProperties (via Workbook.Properties) enthält OOXML-Anzeige-Flags wie ShowObjects. Dokumenten-Metadaten-Strings (Titel, Autor usw.) befinden sich in Workbook.DocumentProperties.
Entfernt CompactStyles jemals Stile, die ich benötige?
Nein. CompactStyles entfernt nur Stile, die von keiner Zelle oder Formatregel in der Arbeitsmappe referenziert werden.
Kann ich LoadDiagnostics lesen, selbst wenn keine Reparatur versucht wurde?
Ja. Die Issues Sammlung wird leer sein und sowohl HasRepairs als auch HasDataLossRisk werden false zurückgeben.