Работа с обработкой XML
Обзор
Aspose.Cells FOSS for Java обрабатывает OOXML XML внутренне, используя потоковый SAX‑based reader для загрузки и DOM‑based writer для сохранения. Слой обработки XML выполняет исправление повреждённых пакетов, когда LoadOptions.setTryRepairXml(true) установлен.
Режим ремонта
Включить режим восстановления, чтобы терпимо обрабатывать повреждённые файлы XLSX:
import com.aspose.cells_foss.LoadIssue;
import com.aspose.cells_foss.LoadOptions;
import com.aspose.cells_foss.Workbook;
LoadOptions options = new LoadOptions();
options.setStrictMode(false);
options.setTryRepairPackage(true);
options.setTryRepairXml(true);
try (Workbook workbook = new Workbook("damaged.xlsx", options)) {
if (workbook.getLoadDiagnostics().hasRepairs()) {
for (LoadIssue issue : workbook.getLoadDiagnostics().getIssues()) {
System.out.println("Repaired: " + issue.getMessage());
}
}
workbook.save("repaired.xlsx");
}Загрузка диагностики
workbook.getLoadDiagnostics() возвращает объект LoadDiagnostics со:
hasRepairs()— возвращаетtrue, если при загрузке были выполнены какие‑либо исправленияgetIssues()— возвращает список объектовLoadIssueс сообщениями