Какие еще настройки нужны, чтобы увидеть HTML-таблицу в формате Excel в Open Office Org? - PullRequest
0 голосов
/ 28 июля 2010

Я сгенерировал HTML-таблицу из своего веб-приложения и сохранил таблицу в формате .xls (одним словом я создаю лист .xls из своего веб-приложения).

Какие еще настройки мне нужно показать в виде таблицы.

Ответы [ 4 ]

8 голосов
/ 09 августа 2010

Вы не создаете файл XLS, вы создаете неверно сформированный файл HTML с именем, оканчивающимся на .xls.

На самом деле, вы даже этого не делаете, поскольку файлов нетв Интернете (есть потоки, которые могут или не могут оказаться в файлах).

Различные версии Open Office с разными настройками будут отличаться в зависимости от того, как они справляются с ошибками.Версия на одной из машин, которую вы делаете, гласит: «да, это не XLS, о! Это HTML с таблицей, я знаю, что делать», в то время как другая добирается до «да, это не так».t XLS, это куча текста со странными символами меньше и больше, чем везде, что мне делать ".

Что вы хотите сделать, это создать реальный поток, который Open Office идругие таблицы могут иметь дело с.XLS возможен, но довольно сложно.Вместо этого перейдите на CSV.

Если ваша таблица должна была быть:

<table>
 <tr>
  <th>1 heading</th><th>2 &amp; last heading</th>
 </tr>
 <tr>
  <td>1st cell</td><td>This is the "ultimate" cell</td>
 </tr>
</table>

Тогда она должна стать:

"1 heading","2 & last heading"
"1st cell","This is the ""ultimate"" cell"

Другими словами, в новых строках указываются строки, запятыедля обозначения ячеек, без кодировки HTML, кавычки вокруг всего и кавычки в вашем фактическом контенте удваиваются.(Вам не нужно всегда иметь кавычки на вашем контенте, но это никогда не ошибается, так что это проще, чем работать, когда они вам нужны).

Теперь создайте тип контента "text / csv".

Теперь вы выводите поток CSV, который можно сохранить в виде файла CSV.Ваше программное обеспечение для работы с электронными таблицами будет иметь гораздо лучшее представление о том, что с этим делать (оно может по-прежнему спрашивать о кодировке символов при открытии, но при предварительном просмотре вам будет показана электронная таблица с данными, а не набор источников HTML повсюду.

2 голосов
/ 06 августа 2010

На самом деле он не сохраняется как файл .xls - он выглядит как файл HTML, но с расширением .xls. Как вы генерируете .xls? На стороне сервера вы можете предоставить кнопку для генерации .xls напрямую (разные методы в зависимости от вашей серверной платформы - с помощью perl есть модуль Spreadsheet :: WriteExcel, который пишет .xls напрямую, с использованием Java есть JExcel (http://jexcelapi.sourceforge.net/ и POI (http://poi.apache.org/)), у других платформ будут свои методы.

1 голос
/ 06 августа 2010

Хорошо, Subodh, если вы хотите сгенерировать файлы .xls или .csv, вы не можете просто изменить расширение файла и правильно открыть его в этой программе.

2 Опции, которые у вас есть на данный момент, включают создание файла с данными на сервере и отправку его пользователю для загрузки.

.csv
CSV-файлы легче генерировать на стороне сервера. В простейшем смысле вы можете рассматривать их как обычные текстовые файлы с запятыми (не обязательно только запятыми), разделяющими отдельные ячейки, которые могут быть прочитаны программами для работы с электронными таблицами. Для PHP есть статья Здесь , которая объясняет, как генерировать файлы CSV.

.xls
Файлы xls не так просто создать, как файлы CSV. На стороне сервера вам понадобится решение для их генерации. Для PHP есть ресурс Здесь .

Использование xls над CSV имеет очевидное преимущество, заключающееся в том, что вы можете указать форматирование и контролировать визуальное представление ваших данных.


Редактировать: Внимательно посмотрев на изображение, которое вы разместили, я вижу, что вы пытаетесь сделать. Если вы просто хотите, чтобы этот файл правильно открывался в программе для работы с электронными таблицами, не сохраняйте его как CSV или xls

hello.html

<table>
<tr><td>Hi</td><td>Hi</td><td>Hi</td><td>Hi</td></tr>
<tr><td>2</td><td>2</td><td>131</td><td>11312</td></tr>
</table>

Сохраненный в виде HTML-файла будет корректно открываться (как правильная таблица) в любой программе работы с электронными таблицами.

0 голосов
/ 10 августа 2010

Чтобы сузить проблему:

1) Открываете ли вы один и тот же файл 1004 * .xls на обеих машинах?- какая версия OpenOffice на компьютере 1?- какая версия OpenOffice установлена ​​на компьютере 2?

2) Как вы создаете файл .xls?- Вы просто используете объект ответа для изменения типа контента или какого-либо проприетарного программного обеспечения?- можете ли вы включить пример кода?

3) Вы пробовали чистый формат HTML?

...