Подтвердить что ты не робот

Получить "абсолютный путь к книге" из файла .xls

Когда я использую Excel "Инспектор документов" в определенном файле .xls для проверки "скрытых свойств или личной информации", он говорит:

Была найдена следующая информация о документе:
* Абсолютный путь к книге

Как я могу получить абсолютный путь книги из файла? Если это необходимо сделать программным способом, я могу использовать Java (например, Apache POI) или VBA.

Я знаю, где файл в настоящее время сохранен, но то, что я хочу извлечь, является абсолютным путем к книге, которая сохраняется в файле, который у меня есть. Это значит, что я могу знать, где он был сохранен автором.

Вот что случилось с файлом:

  • Кто-то его создал, сохранив его в некотором абсолютном неизвестном мне файловом пути
  • Они загрузили его на веб-сайт
  • Я загрузил его с веб-сайта

Excel указывает, что документ содержит абсолютный путь с шага 1. Я следую этому пути, а не тому месту, где я его сохранил на шаге 3, так как знаю это.

4b9b3361

Ответ 1

Я могу воспроизвести это предупреждение, просто создав пустой файл Excel, добавив формулу, сохранил ее как BIFF8 (.xls). Затем инспектор документов предупредит об абсолютном пути.... но в моем случае в файле не было имени файла.

Простым способом проверки этого является открытие файла в шестнадцатеричном редакторе и поиск известного местоположения сохранения (т.е. место, где хранился фиктивный/тестовый файл) - это либо хранится как ASCII, либо как 16-битная строка, т.е. каждый нечетный байт является символом.

Если вы хотите использовать инструменты разработчика POI, вы можете использовать следующее:

Перечислить все записи Excel:
java -cp poi-3.16-beta1.jar org.apache.poi.hssf.dev.BiffViewer file.xls

Перечислить свойства документа и сводки:
java -cp poi-3.16-beta1.jar org.apache.poi.hpsf.extractor.HPSFPropertiesExtractor file.xls

Чтобы перечислить любые внедренные объекты рядом с обычными подозреваемыми SummaryInformation, DocumentSummaryInformation и Workbook:
java -cp poi-3.16-beta1.jar org.apache.poi.poifs.dev.POIFSLister file.xls

Итак, после запуска инструментов и записи вывода вы можете удалить свойства с помощью Excel Document Inspector и снова выполнить инструменты. Выход может быть разным, и вы можете найти виновника.

Ответ 2

Предполагая, что это файл .xlsx, а не файл .xls более старого стиля, вы можете

  • Переименуйте книгу как файл .zip
  • Посмотрите на xl\workbook.xml "файл" в файле .zip

и вы найдете абсолютный путь при последнем сохранении из Excel.

Вот почему не рекомендуется делиться рабочими таблицами с другими людьми, если только вы не сначала очистите эту информацию.


Я не уверен, как найти его в файлах двоичного формата.