Содержимое распакованного xlsx файла и apache poi - PullRequest
0 голосов
/ 27 мая 2020

Изначальная проблема - невозможность открыть файл xlsx через poi, при этом в Excel он открывается.

Детальное изучение poi показало, что проблема кроется в содержимом файла. Если распаковать xslx файл, то в папке xl помимо всех остальных файлов будет два, из-за которых возникает проблема

xl/metadata
xl/metadata.xml

при использовании poi-метода OPCPackage.open (fileName, PackageAccess. READ) это приводит к ошибке:

org.apache.poi.openxml4j.exceptions.InvalidFormatException: You can't add a part with a part name derived from another part ! [M1.11]

, которая возникает из-за тех же имен файлов.

Если я просто скопирую содержимое всего файла xlsx в новый созданный файл xlsx и сохраните его, то файла xl / metadata там не будет и он откроется через poi хорошо. Но у меня нет задачи просто исправить файл, мне нужно выяснить, почему эта проблема могла возникнуть. Есть ли какое-нибудь представление о вхождении xl / метаданных в содержимое xlsx?

...