العمل مع إعدادات الكتاب العامل الأساسي

العمل مع إعدادات الكتاب العامل الأساسي

العمل مع إعدادات الكتاب العامل الأساسي

وبصرف النظر عن شبكة ورقة العمل، يحمل دفتر العمل البيانات الميتا وتكوينها التي تؤثر على كيفية تفسير Excel: نظام التاريخ، مؤلف الوثيقة، المحلية، وما إذا كانت معلومات الاسترداد مخزنة. Workbook ففي هذه المحاضرة يظهر هذا Workbook.Settings, Workbook.Properties,و ، و Workbook.LoadDiagnostics.- يتم التحكم في سلوك حفظه من خلال SaveOptions.


إعدادات Workbook

Workbook.Settings عودة أ WorkbookSettings الموضوع : Set Date1904 إلى true استخدام نظام التاريخ 1904 (معادلة في الملفات التي تنشأ من macOS Excel). Culture إلى أ CultureInfo إمكانية التحكم في عدد وتاريخ الوقوف محليًا.

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);

ملكية الوثيقة

Workbook.Properties عودة أ WorkbookProperties الأسطوانات التي تتميز بالعلامات مثل ShowObjects و FilterPrivacy.- الاستخدام المكتوب والمتصفح للمعلومات Workbook.DocumentProperties,التي تظهر Title, Subject, Author, Keywords, Comments, Category, Company,و ، و Manager كالملفات المباشرة.

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);

تحميل التشخيص

بعد تحميل كتاب العمل، تحقق من Workbook.LoadDiagnostics لمعرفة ما إذا كانت المكتبة قد قامت بتنفيذ أي إصلاحات. LoadDiagnostics.HasRepairs هو true إذا تم إجراء إصلاحات واحدة على الأقل. LoadDiagnostics.HasDataLossRisk هو true إذا تم إصلاح البيانات المفقودة.إيترات LoadDiagnostics.Issues الوصول الفردي DiagnosticEntry الأجسام مع Code, Severity, Message, RepairApplied,و ، و 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);
}

حفظ الخيارات

Workbook.Save(path, SaveOptions) يوافق على A SaveOptions - تخصيص الناتج المحمول. UseSharedStrings التحقق مما إذا كانت قيم الشريط مخزنة في جدول الشرائح المشتركة (يقلل حجم الملفات للورق مع العديد من الشرايين المتكررة). ValidateBeforeSave إجراء التحقق الداخلي من الكتابة قبل كتابة. CompactStyles إزالة الأنماط غير المستخدمة. PreserveRecoveryMetadata التحقق مما إذا كانت بيانات إعادة التأهيل 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.");

نصائح وأفضل الممارسات

  • التحقق LoadDiagnostics.HasDataLossRisk بعد تحميل الملفات التي تم إصلاحها وتحذير المستخدمين إذا كانت البيانات قد تم سحبها.
  • مجموعة DocumentProperties.Author و Company بالنسبة للملفات المشتركة مع المستخدمين النهائيين - تظهر هذه في لوحة معلومات الملف في Excel.
  • UseSharedStrings = true فهي مفيدة للورق مع العديد من القيم المتكررة (على سبيل المثال، عمود الحالة)؛ لها تأثير أقل على الأوراق الرقمية الثقيلة.
  • Date1904 يجب أن تتطابق بين المصدر والملف المستهدف لتجنب تآكل قيمة التاريخ عند نسخ الخلايا بين الكتب المكتوبة.

القضايا المشتركة

مسألةسببتصحيح
LoadDiagnostics.Issues الفراغ بعد إصلاحهلم تكن هناك حاجة إلى إصلاح أو TryRepair* لم يتم وضعهامجموعة TryRepairPackage = true و TryRepairXml = true في LoadOptions
DocumentProperties.Title لا تستمراستخدام WorkbookProperties بدلاً من DocumentPropertiesالوصول إلى الميتايدات عبر Workbook.DocumentProperties,لا ، لا Workbook.Properties
WorkbookSaveException على حفظفشل التحقق مع ValidateBeforeSave = trueفحص رسالة الاستثناء؛ إلغاء تأكيد لتعزيل البيانات السيئة

FAQ

ما الفرق بين WorkbookProperties و DocumentProperties?

WorkbookProperties ( من خلال Workbook.Propertiesيحتوي على علامات عرض OOXML (على سبيل المثال). ShowObjects). DocumentProperties ( من خلال Workbook.DocumentProperties) يحتفظ بالخطوط الميتا البيانات على الطراز الدبلن-كوريا: العنوان، المؤلف، الشركة، إلخ.

يُفعل CompactStyles إزالة النمط الذي أحتاجه.?

CompactStyles يزيل فقط الأنماط التي لا يشير إليها أي خلية أو شكل مشروط أو نمط يسمى.

يمكنني قراءة LoadDiagnostics حتى عندما لم يتم إجراء أي إصلاح.?

إذا لم يتم إصلاحه ، فالمحاولة Issues المجموعة فارغة و كلاهما HasRepairs و HasDataLossRisk العودة false.


إشارة API

الفئة / الممتلكاتوصف
Workbook.Settingsعودة WorkbookSettings
WorkbookSettings.Date1904نظام تاريخ 1904
WorkbookSettings.Cultureموقع رقم / تاريخ الخصم
Workbook.DocumentPropertiesالمؤلف، العنوان، بيانات الشركة
Workbook.LoadDiagnosticsتقرير إصلاح البضائع
LoadDiagnostics.HasRepairstrue إذا تم إجراء أي إصلاحات
LoadDiagnostics.HasDataLossRisktrue إذا تم إصلاح البيانات المفقودة
LoadDiagnostics.Issuesمجموعة من DiagnosticEntry الموضوعات
DiagnosticEntry.Codeإصلاحات قصيرة كود سلك
DiagnosticEntry.SeverityDiagnosticSeverity قيمة Enum
DiagnosticEntry.Messageوصف إصلاح القراءة البشرية
SaveOptions.UseSharedStringsتخزين الشرائح في جدول الشريط المشترك
SaveOptions.ValidateBeforeSaveإجراء التحقق الداخلي قبل الكتابة
SaveOptions.CompactStylesإزالة الأنماط غير المستخدمة
 العربية