Как работать с настройками основных рабочих книг в .NET

Как работать с настройками основных рабочих книг в .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.

See Also

 Русский