Преобразуйте документ в формате Word в HTML программно в Java

Вы пытались открыть CSV с помощью панд?

Сразу же я заметил, что вы не включили .csv в имя файла.

Измените последнюю строку на:

finaldf.to_csv("Compiled_Project.csv",encoding='utf-8')
21
задан kaychaks 22 October 2008 в 19:36
поделиться

8 ответов

Мы используем экстракторы TM ( http://mvnrepository.com/artifact/org.textmining/tm-extractors ) и отступаем к коммерческому Aspose ( http://www.aspose.com/ ). У обоих есть собственные API Java.

3
ответ дан 29 November 2019 в 21:58
поделиться

Если это - docx, Вы могли бы использовать docx4j (ASL v2). Это использует XSLT для создания HTML.

Однако это даст Вам единственный HTML для целого документа.

Если бы Вы хотели HTML на страницу, то Вы могли бы сделать что-то с тегом lastRenderedPageBreak, который тот Word помещает в docx (предполагающий использование Word для создания его).

1
ответ дан 29 November 2019 в 21:58
поделиться

Это проще сделать в новом документе MS Word docx, так как формат в XML. Вы можете использовать XSL для преобразования документа Word в формате XML в формат HTML.

Если, однако, ваш документ Word находится в старой версии, вы можете использовать библиотеку POI. http://poi.apache.org/ , а затем получить к нему доступ и сгенерировать объект Java, и с этого момента вы можете легко преобразовать его в формат HTML с помощью библиотеки Java Java

http: / /www.dom4j.org/dom4j-1.4/apidocs/org/dom4j/io/HTMLWriter.html

2
ответ дан 29 November 2019 в 21:58
поделиться

Я использовал следующий подход успешно в производственных системах, где новый MS Word формат XML не доступен:

Икра процесс, который делает что-то подобное:

http://www.oooninja.com/2008/02/batch-command-line-file-conversion-with.html

Вы, вероятно, хотели бы запустить openoffice однажды при запуске Вашей программы и назвать сценарий Python как много раз во время Вашей программы, к которой Вы нуждаетесь (со своего рода проверкой, чтобы гарантировать, что офисный процесс всегда там).

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

офис - бездисплейный "macro://< соедините каналом в офис vb макрос для преобразования с параметром, указывающим file>";

я использовал макро-подход многократно, и он работает хорошо (извините, я не имею макро-код в наличии).

, В то время как существуют механизмы для того, чтобы сделать его через MS Word, они не легки от Java и действительно требуют, чтобы другие программы поддержки управляли MS Word через OLE.

я использовал abiword прежде также, который работает хорошо на многие документы, но действительно запутывается с более составными документами (офис, кажется, обрабатывает все, что я бросил в него). Abiword имеет немного более легкий интерфейс командной строки для преобразования, чем офис.

4
ответ дан 29 November 2019 в 21:58
поделиться

Необходимо было бы найти спецификацию документа в формате Word MS (так как это - в основном разгрузка двоичных данных того, что находится в слове в то время), и медленно проходите его, поэлементно преобразование слова мс "возражает/указывает" против HTML equiv., Вы могли бы быть в состоянии найти, что сценарий делает это для Вас, так как это действительно не забавная работа, и я отговорил бы от него (преобразовывающий форматы файлов, или даже читающий из коммерческих файлов самостоятельно является всегда твердым и часто неполным). PS: всего google doc2html

0
ответ дан 29 November 2019 в 21:58
поделиться
import officetools.OfficeFile; // package available at www.dancrintea.ro/doc-to-pdf/
...
FileInputStream fis = new FileInputStream(new File("test.doc"));
FileOutputStream fos = new FileOutputStream(new File("test.html"));
OfficeFile f = new OfficeFile(fis,"localhost","8100", true);
f.convert(fos,"html");

Все возможные преобразования:

документ-> PDF, HTML, txt, rtf

xls-> PDF, HTML, csv

ppt-> PDF, swf

HTML-> PDF

0
ответ дан 29 November 2019 в 21:58
поделиться

При предназначении для файлов Word 2007 с помощью формата ooxml тогда этот , статья могла бы помочь. И существует проект Ooxml4j, который реализует ooxml для библиотеки Java.

, Если Вы нацелены на двоичные файлы хотя... thats другая проблема.

0
ответ дан 29 November 2019 в 21:58
поделиться

Я вижу, что эта ветка появляется во внешних ссылках и иногда в ней появляются сообщения, поэтому я решил опубликовать обновление (надеюсь, никто не возражает). OpenOffice продолжает развиваться, и в версии 3.2 снова улучшены фильтры импорта и экспорта слов. OpenOffice и Java могут работать на многих платформах, поэтому системы Java могут использовать OpenOffice UNO API напрямую для импорта / управления / экспорта документов во многих форматах (включая word и pdf) или использовать такую ​​библиотеку, как JODReports или Докмос для облегчения. У обоих есть бесплатные / открытые варианты.

1
ответ дан 29 November 2019 в 21:58
поделиться
Другие вопросы по тегам:

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