Як працювати з основними налаштуваннями робочої книжки в .NET
Aspose.Cells FOSS for .NET exposes workbook-level configuration through Workbook.Settings (система місцевого і дату), Workbook.DocumentProperties (метадані автора), Workbook.LoadDiagnostics (доповідь про ремонт) та SaveOptions (заховувати поведінку). dotnet add package Aspose.Cells_FOSS.
Крок за кроком посібник
Крок 1: Налаштування пакету
dotnet add package Aspose.Cells_FOSSКрок 2: імпортні імена
using Aspose.Cells_FOSS;
using System.Globalization;Крок 3: Конфігуруйте налаштування робочої книжки
Workbook.Settings повертає a WorkbookSettings об’єкт. Набір Date1904 = true для файлів macOS, які використовують систему дати 1904. Culture для контролю номеру та дати локального аналізу.
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);Крок 4: Назначення властивостей документу
Workbook.DocumentProperties експозиції Title, Subject, Author, Keywords, Comments, Category, Company, і Manager як прямі властивості струн.
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);Крок 5: Використовуйте SaveOptions
Workbook.Save(path, SaveOptions) приймає SaveOptions об’єкт для налаштування виходу. Ключові властивості: UseSharedStrings (зменшує розмір файлу для листів з повторними стругами), ValidateBeforeSave (проводить валідацію перед написанням), а також CompactStyles (видає не використовувані стилі).
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.”);
---
### Крок 6: Читання діагностики навантаження після ремонту
Після завантаження з `TryRepairPackage = true`, перевірка `Workbook.LoadDiagnostics` щоб побачити, чи були проведені якісь ремонти.
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}");<button class=“hextra-code-copy-btn hx-group/copybtn hx-transition-all active:hx-opacity-50 hx-bg-primary-700/5 hx-border hx-border-black/5 hx-text-gray-600 hover:hx-text-gray-900 hx-rounded-md hx-p-1.5 dark:hx-bg-primary-300/10 dark:hx-border-white/10 dark:hx-text-gray-400 dark:hover:hx-text-gray-50” title=“Скопіювати код”
<div class="copy-icon group-[.copied]/copybtn:hx-hidden hx-pointer-events-none hx-h-4 hx-w-4"></div>
<div class="success-icon hx-hidden group-[.copied]/copybtn:hx-block hx-pointer-events-none hx-h-4 hx-w-4"></div>
Загальні проблеми та рішення
WorkbookSaveException коли ValidateBeforeSave = true. У робочому книзі є структурна невідповідність. ValidateBeforeSave тимчасово зберегти і оглянути файл, а потім виправити проблемний вміст.
Свойства документу не помітні в панелі “Інформація про файл” Excel. Переконайтеся, що ви встановлюєте властивості на Workbook.DocumentProperties, не Workbook.Properties.Останній містить знаки відображення, а не ланцюжки метаданих.
Date1904 = true викликає зміщення значень дати. Date1904 змінює епоху, що використовується для серійних номерів дати. true для файлів, які походять з macOS Excel з включеною системою дати 1904; системи змішування викликають помилки на відстані до 1462 днів.
Часто задавані запитання
У чому різниця між: WorkbookSettings і WorkbookProperties?
WorkbookSettings (з допомогою: Workbook.Settings) містить такі значення конфігурації, як: Date1904 і Culture. WorkbookProperties (з допомогою: Workbook.Properties) містить OOXML-флаг, наприклад: ShowObjects. Строки метаданих документів (заголовок, автор і т.д.) знаходяться в Workbook.DocumentProperties.
Does CompactStyles коли-небудь видаляти стилі, які мені потрібні?
Ні, не можу. CompactStyles видаляє лише стилі, на які не вказується жодна клітина або правило форматизації в робочому книзі.
Чи можу я читати? LoadDiagnostics навіть коли не було спроби ремонту?
Так, в “Кільці”. Issues колекція буде порожньою і обидві HasRepairs і HasDataLossRisk повернеться. false.