Kuinka työskennellä Core Workbook -asetusten kanssa .NETissä
Aspose.Cells FOSS for .NET tarjoaa työkirjatasoisen konfiguraation kautta Workbook.Settings (paikallisasetus ja päivämääräjärjestelmä), Workbook.DocumentProperties (tekijän metatiedot), Workbook.LoadDiagnostics (korjausraportti) ja SaveOptions (tallennuskäyttäytyminen). Asenna dotnet add package Aspose.Cells_FOSS.
Vaiheittainen opas
Vaihe 1: Asenna paketti
dotnet add package Aspose.Cells_FOSSVaihe 2: Tuo nimiavaruus
using Aspose.Cells_FOSS;
using System.Globalization;Vaihe 3: Määritä WorkbookSettings
Workbook.Settings palauttaa WorkbookSettings-objektin. Aseta Date1904 = true macOS-alkuperäisille tiedostoille, jotka käyttävät vuoden 1904 päivämääräjärjestelmää. Aseta Culture ohjaamaan numero- ja päivämääränjäsennyksen kieltä.
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);Vaihe 4: Aseta asiakirjan ominaisuudet
Workbook.DocumentProperties paljastaa Title, Subject, Author, Keywords, Comments, Category, Company ja Manager suorina merkkijono-ominaisuuksina.
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);Vaihe 5: Käytä SaveOptions
Workbook.Save(path, SaveOptions) hyväksyy SaveOptions-objektin tulosteen mukauttamiseksi. Keskeiset ominaisuudet: UseSharedStrings (vähentää tiedoston kokoa taulukoissa, joissa on toistuvia merkkijonoja), ValidateBeforeSave (suorittaa validoinnin ennen kirjoittamista) ja CompactStyles (poistaa käyttämättömät tyylit).
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.");Vaihe 6: Lue LoadDiagnostics korjauksen jälkeen
Kun olet ladannut TryRepairPackage = true, tarkista Workbook.LoadDiagnostics nähdäksesi, onko korjauksia sovellettu.
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}");Yleisiä ongelmia ja korjauksia
WorkbookSaveException kun ValidateBeforeSave = true. Työkirjassa on rakenteellinen epäjohdonmukaisuus. Poista ValidateBeforeSave väliaikaisesti käytöstä tallentaaksesi ja tarkistaaksesi tiedoston, sitten korjaa ongelmallinen sisältö.
Asiakirjan ominaisuudet eivät näy Excelin Tiedoston tiedot -paneelissa.
Varmista, että asetat ominaisuudet kohteelle Workbook.DocumentProperties, et Workbook.Properties. Jälkimmäinen sisältää näyttöliput, ei metatietojonoja.
Date1904 = true aiheuttaa päivämääräarvojen siirtymisen.
Date1904 muuttaa aikakauden, jota käytetään päivämäärä sarjanumeroissa. Aseta se vain true:ksi tiedostoille, jotka ovat peräisin macOS Excelistä, jossa 1904‑päivämääräjärjestelmä on käytössä; järjestelmien sekoittaminen aiheuttaa 1462‑päivän poikkeavuusvirheitä.
Usein kysytyt kysymykset
Mikä on ero WorkbookSettings ja WorkbookProperties välillä?
WorkbookSettings (via Workbook.Settings) sisältää konfiguraatioarvoja kuten Date1904 ja Culture. WorkbookProperties (via Workbook.Properties) sisältää OOXML‑näyttöliput kuten ShowObjects. Asiakirjan metatietomerkkijonot (Otsikko, Tekijä, jne.) sijaitsevat Workbook.DocumentProperties.
Poistaako CompactStyles koskaan tyylejä, joita tarvitsen?
Ei. CompactStyles poistaa vain tyylit, joita ei ole viitattu millään solulla tai muotoilusäännöllä työkirjassa.
Voinko lukea LoadDiagnostics vaikka korjausta ei yritetty?
Kyllä. Issues-kokoelma on tyhjä ja sekä HasRepairs että HasDataLossRisk palauttavat false.