HTML-таблица экспорта к Excel - использование jQuery или Java

У меня есть HTML-таблица на моей странице JSP, что я хочу быть экспортированным в Excel на нажатии кнопки.

Каков был бы лучший способ идти об этом?

(Для напр., как я сделал бы, это использование может быть функцией jQuery?)

Любые примеры кода в демонстрационных целях должны быть большими.

9
задан beaver 20 August 2018 в 16:44
поделиться

6 ответов

Я бы порекомендовал Apache POI , мы пользуюсь годами, проблем не было.

Множество примеров в Интернете для хорошего начала, и документация на сайте также хороша: http://poi.apache.org/spreadsheet/quick-guide.html

6
ответ дан 4 December 2019 в 13:44
поделиться

Скорее экспорт в формат CSV . Он также поддерживается Excel. Экспорт в полноценный формат XLS (X) с использованием, например, Apache POI HSSF или JExcepAPI выполняется медленно и занимает много памяти.

Экспорт в CSV относительно прост. Вы можете найти полный пример кода в этом ответе .


Что касается экспорта в файлы с использованием JavaScript, то это невозможно без взаимодействия Flash или серверной части. Во Flash пока есть только библиотека Downloadify , которая может экспортировать в простые текстовые файлы. Кроме того, у ExtJs, похоже, есть экспортная библиотека CSV , но я не могу найти подходящую демонстрационную страницу.

4
ответ дан 4 December 2019 в 13:44
поделиться

Экспорт в формат файла Excel с помощью JQuery невозможен.

Вы можете попробовать с Java. Для этого существует множество библиотек.

0
ответ дан 4 December 2019 в 13:44
поделиться

Excel может загружать файлы CSV (значения, разделенные запятыми), которые, по сути, представляют собой просто файлы со всем, что помещается в отдельные ячейки Excel, разделенные запятыми.

Я недостаточно знаю о том, как jQuery может обрабатывать передачу информации в файл, который вы хотите загрузить, но похоже, что была написана библиотека jQuery, которая, по крайней мере, преобразует таблицы html в формат CSV, и она находится здесь: http://www.kunalbabre.com/projects/table2CSV.php

Редактировать (29 февраля 2016 г.): Вы можете использовать приведенную выше реализацию table2csv вместе с FileSaver.js (который является оболочкой для спецификации HTML5 W3C saveAs () ).

Использование будет выглядеть примерно так:

var resultFromTable2CSV = $('#table-id').table2CSV({delivery:'value'});

var blob = new Blob([resultFromTable2CSV], {type: "text/csv;charset=utf-8"});

saveAs(blob, 'desiredFileName.csv');
1
ответ дан 4 December 2019 в 13:44
поделиться

Вы можете проанализировать таблицу, используя такую ​​библиотеку, как http://jsoup.org/

После получения данных вы можете сохранить их в формате, совместимом с Excel (CSV ), или используя библиотеку Java Excel для таких, как POI, или используя JDBC для записи данных в лист Excel, см. этот пример: Файл Excel, защищенный паролем

3
ответ дан 4 December 2019 в 13:44
поделиться

Вам придется создать что-то на стороне сервера (например, сервлет), чтобы прочитать html, создать файл excel и передать его обратно пользователю.

Вы можете использовать эту библиотеку, чтобы помочь вам выполнить преобразование.

0
ответ дан 4 December 2019 в 13:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: