Kuinka työskennellä Core Workbook -asetusten kanssa .NETissä

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_FOSS

Vaihe 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.

Katso myös

 Suomi