Выполнение "Сохранить как" документа электронной таблицы XML в документ Excel в Java
Как мне преобразовать документ "XML Spreadsheet" в Excel, используя код Java?
Я могу сделать это вручную, открыв этот документ (в котором окна распознают, что его можно открыть в Excel, поэтому он открыл его в Excel) в Excel и Файл-> Сохранить как-> Excel 2003. Однако я бы предпочел автоматизировать это. Есть ли в любом случае мы можем сделать это? Я также попытался скопировать файл электронной таблицы xml (оканчивается на.xml) в Excel (оканчивается на.xls), но не работает, поскольку Apache POI все еще обрабатывает его как документ XML.
2 ответа
Если у вас есть XML-файл, и вы конвертируете в XLS-файл, то вы можете использовать синтаксический анализ для чтения данных из XML-файла, а затем преобразовать эти данные в XLS-файл. Вы можете легко создать файл xls с помощью метода servlet response.setContent().
К сожалению, похоже, что Apache POI не поддерживает формат электронных таблиц Excel XML.
Однако существуют коммерческие продукты для загрузки электронных таблиц Excel XML, такие как EasyXLS, см. Как преобразовать файл электронной таблицы XML в Excel в Java (лично я не проверял).
И другой путь, это запустить Excel через COM (для этого требуется наличие операционной системы Windows вместе с установкой Excel), например
- используя Java COM Bridge Jacob, этот метод обсуждается в следующей статье: Электронная таблица Excel XML в Java
- Другой способ - запустить процесс, запускающий скрипт Powershell, пилотирующий Excel через COM.