Treballar amb la configuració de l'ordinador principal

Treballar amb la configuració de l'ordinador principal

Treballar amb la configuració de l’ordinador principal

Més enllà de la xarxa d’hexetes, un llibre porta metadades i configuració que afecten com Excel l’interpreta: el sistema de dates, autor del document, localització i si es guarda informació de recuperació. Workbook classe exposa aquests a través de Workbook.Settings, Workbook.Properties, i Workbook.LoadDiagnostics.El comportament de l’estalvi es controla a través del sistema d’alerta. SaveOptions.


Ajustaments del llibre de treball

Workbook.Settings retorna un WorkbookSettings object. Set Date1904 a la true per utilitzar el sistema de data 1904 (común en arxius originaris d’Excel). Set Culture a una CultureInfo instància per controlar el nombre i la data de l’anàlisi local.

using Aspose.Cells_FOSS;
using System.Globalization;

var wb = new Workbook();

// Use 1904 date system
wb.Settings.Date1904 = true;

// Set culture for number/date formatting
wb.Settings.Culture = new CultureInfo("en-US");

wb.Worksheets[0].Cells["A1"].PutValue("Settings applied");
wb.Save("settings.xlsx");

var loaded = new Workbook("settings.xlsx");
Console.WriteLine("Date1904: " + loaded.Settings.Date1904);

Propietats del document

Workbook.Properties retorna un WorkbookProperties objecte amb banderes orientades a la visualització com ara: ShowObjects i de la FilterPrivacy.Per a l’autor i per a la utilització de metadades descriptives. Workbook.DocumentProperties, que exposa Title, Subject, Author, Keywords, Comments, Category, Company, i Manager com a propietats directes de cadena.

using Aspose.Cells_FOSS;

var wb = new Workbook();

var doc = wb.DocumentProperties;
doc.Title = "Quarterly Report";
doc.Subject = "Sales Data";
doc.Author = "Reporting Team";
doc.Company = "Contoso Ltd";
doc.Keywords = "sales, quarterly, 2026";
doc.Comments = "Generated by automated pipeline";

wb.Worksheets[0].Cells["A1"].PutValue("See document properties");
wb.Save("properties.xlsx");

var loaded = new Workbook("properties.xlsx");
Console.WriteLine("Title: " + loaded.DocumentProperties.Title);
Console.WriteLine("Author: " + loaded.DocumentProperties.Author);

Diagnòstic de càrrega

Després de carregar un llibre, comprova Workbook.LoadDiagnostics per descobrir si la biblioteca va aplicar alguna reparació. LoadDiagnostics.HasRepairs és true si s’ha fet almenys una reparació estructural. LoadDiagnostics.HasDataLossRisk és true si una reparació descarta dades. Iterar LoadDiagnostics.Issues per accedir a la informació individual. DiagnosticEntry objectes amb: Code, Severity, Message, RepairApplied, i DataLossRisk.

using Aspose.Cells_FOSS;

var opts = new LoadOptions { TryRepairPackage = true, TryRepairXml = true };

try
{
    var wb = new Workbook("possibly-corrupt.xlsx", opts);
    var diag = wb.LoadDiagnostics;

    if (diag.HasRepairs)
    {
        Console.WriteLine("Repairs applied: " + diag.HasRepairs);
        Console.WriteLine("Data loss risk: " + diag.HasDataLossRisk);
        foreach (var entry in diag.Issues)
        {
            Console.WriteLine($"  [{entry.Severity}] {entry.Code}: {entry.Message}");
            Console.WriteLine($"  RepairApplied={entry.RepairApplied}, DataLossRisk={entry.DataLossRisk}");
        }
    }
    else
    {
        Console.WriteLine("File loaded cleanly.");
    }
}
catch (WorkbookLoadException ex)
{
    Console.WriteLine("Unrecoverable: " + ex.Message);
}

Salvar opcions

Workbook.Save(path, SaveOptions) accepta una SaveOptions Objectes a personalitzar la sortida de salvament. UseSharedStrings controla si els valors de cadena s’emmagatzemen en la taula de cadenes compartides (redueix el mida del fitxer per a les fulles amb moltes cadenas repetides). ValidateBeforeSave executar la validació interna del llibre de treball abans d’escriure. CompactStyles elimina els estils no utilitzats. PreserveRecoveryMetadata controla si es conserven metadades de recuperació d’Office.

using Aspose.Cells_FOSS;

var wb = new Workbook();
var ws = wb.Worksheets[0];

for (var i = 0; i < 100; i++)
    ws.Cells[i, 0].PutValue("Repeated string value");

var opts = new SaveOptions
{
    UseSharedStrings = true,
    ValidateBeforeSave = true,
    CompactStyles = true,
    PreserveRecoveryMetadata = false,
};

wb.Save("compact.xlsx", opts);
Console.WriteLine("Saved with SaveOptions.");

Consells i millors pràctiques

  • Compte de pagament LoadDiagnostics.HasDataLossRisk després de carregar els arxius reparats i advertir als usuaris si es poden haver perdut dades.
  • Set de punts DocumentProperties.Author i de la Company per als arxius compartits amb els usuaris finals aquests apareixen en el panell d’informació de fitxers d"Excel.
  • UseSharedStrings = true és beneficiosa per a follos amb molts valors de cadena repetits (per exemple columnes d’estat); té un impacte mínim en les folls pesades numèricament.
  • Date1904 ha de coincidir entre el fitxer font i destinació per evitar la deriva del valor de data quan es copien cèl·lules entre quadres.

Problemàtiques comuns

EdicióCausaCorrecció
LoadDiagnostics.Issues està buida després de la reparació.No es necessiten reparacions o TryRepair* no estava establert.Set de punts TryRepairPackage = true i de la TryRepairXml = true en el LoadOptions
DocumentProperties.Title no persistentsUtilització de: WorkbookProperties en lloc de: DocumentPropertiesAccedir a metadades de cadena mitjançant: Workbook.DocumentProperties, no Workbook.Properties
WorkbookSaveException en salvamentFallida de validació amb: ValidateBeforeSave = trueInspeccionar el missatge d’excepció; desactivar la validació per a aïllar les dades no correctes.

FAQ

Quina és la diferència entre WorkbookProperties i de la DocumentProperties?

WorkbookProperties (via Workbook.Properties) conté les banderes d’exhibició OOXML (per exemple,. ShowObjects). DocumentProperties (via Workbook.DocumentProperties) conté les cadenes de metadades d’estil Dublin-Core: Títol, Autor, Empresa, etc.

És així. CompactStyles Eliminar els estils que necessito?

CompactStyles elimina només els estils que no estan referenciats per cap cèl·lula, format condicional o estil anomenat. Els esllans en ús mai s’eliminen.

Puc llegir-te? LoadDiagnostics fins i tot quan no es va intentar reparar?

Sí. Quan no es va intentar la reparació de l’obra, el doctor va fer-ho. Issues la col·lecció està buida i ambdues HasRepairs i de la HasDataLossRisk retorn false.


Resum de referència d’API

Classe / propietatDescripció
Workbook.SettingsRetorns WorkbookSettings
WorkbookSettings.Date1904Utilitzar el sistema de data 1904
WorkbookSettings.CultureLocal per a l’anàlisi de números/data
Workbook.DocumentPropertiesAutor, títol i metadades de l’empresa
Workbook.LoadDiagnosticsInforme de reparació després de la càrrega.
LoadDiagnostics.HasRepairstrue si s’ha aplicat alguna reparació.
LoadDiagnostics.HasDataLossRisktrue si es reparen dades descartades
LoadDiagnostics.IssuesRecopilació de DiagnosticEntry objectes
DiagnosticEntry.CodeCadenes de codi curta per a reparació
DiagnosticEntry.SeverityDiagnosticSeverity valor enum
DiagnosticEntry.MessageDescripció de la reparació legible per l’ésser humà.
SaveOptions.UseSharedStringsEmmagatzemar cadenes en una taula de cadenas compartida
SaveOptions.ValidateBeforeSaveExecutar la validació interna abans d’escriure
SaveOptions.CompactStylesEliminar els estils no utilitzats
 Català