|
|
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Не нахожу примеров работы с ОО толком. Где бы нарыть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 15:10 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Скачал OO SDK Там есть некие примеры, пока курю их, может по пути кто еще чего подкинет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 15:26 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Подключил к проекту библиотеки OpenOffice (juh.jar, jurt.jar, ridl.jar, unoil.jar), как толкуют здесь , пытаюсь достучаться, взяв кусочек кода из SDK: Код: java 1. 2. 3. 4. Ругаецо: C:\Program Files (x86)\OpenOffice 4\program\jpipe.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform Win x64, NetBeans 8.0.2, а OpenOffice 32-х разрядный походу. Чодалатьто теперь? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 17:05 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Использовать 32-битный JDK. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 21:29 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Хотя посмотрел - появился 64-битный SDK для Libreoffice. Раньше не было. Если в программе используется 64-битный JDK, то надо использовать и 64-битный SDK. 32-битный SDK не будет работать в 64-битном JDK. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2015, 15:26 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Partisan M , к сож. для ОО не нашел 64х сдк для Win: http://openoffice.apache.org/downloads.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2015, 13:17 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Зато действительно поставил х64 LibreOffice, который нормально читает ods (OO). Нарыть бы теперь инфу по работе с Libre из Java ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2015, 13:21 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Если программный интерфейс и отличается, то мало. Поэтому думаю можно использовать документацию от OpenOffice SDK. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2015, 13:51 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Да. Прицепил к проекту библиотеку LibreOffice х64 - заработало, документ открывается, все гуд ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2015, 17:03 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Не понятно теперь, как закрыть открытый для чтения файл. В примерах вижу только Код: java 1. 2. 3. Но 1 - мне ну нужно выходить из программы 2 - при System.exit(0) - OpenOffice остается висеть в памяти ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2015, 18:13 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Не помню, что я делал для закрытия (потом посмотрю), но команда закрытия есть: пример DocumentSaver там фрагмент: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2015, 23:41 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
JDS2 - при System.exit(0) - OpenOffice остается висеть в памяти ) Библиотека, ссылку на которую я дал выше, позволяет работать с документами ODF без наличия на рабочем месте OpenOffice, LibreOffice и пр. подобных программ. Это наподобие Apache POI для Microsoft Office. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2015, 08:23 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
посмотрел в своей программе - у меня так и сделано, как в приведённом примере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2015, 09:16 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Partisan M , спасибо, оно. GarrickБиблиотека, ссылку на которую я дал выше, позволяет работать с документами ODF без наличия на рабочем месте OpenOffice, LibreOffice и пр. подобных программ. Это наподобие Apache POI для Microsoft Office. Классная штука, но пока не пойму что не так: 1. взял пример 2. Прицепил к проекту odfdom-0.8.7.jar и simple-odf-0.6.6.jar, указал путь к скачанной xerces-2_11_0 (возможно оттуда надо тоже просто какой-то jar прицепить) 3. Код из примера: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. Ошибка: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xerces/dom/DocumentImpl ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2015, 12:02 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Partisan M , попробовал закрыть, файл закрывается, а LibreOffice все равно остается висеть в диспетчере в фоновых процессах, но при этом, если открывать еще документы, то кол-во не увеличивается, при этом, если открыть и закрыть документ руками, LOffice в памяти не висит после этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2015, 12:47 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
JDSОшибка: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xerces/dom/DocumentImpl In this tutorial, you can build and run the application from the command line or IDE, such as Eclipse. Anyway, you need to download the following three jars, store them in the "lib" directory and add them into the classpatch. Simple ODF 0.6.6. ODFDOM 0.8.7. The Apache Xerces 2.9.1 or higher version (download from Apache Xerces web site). Building and Running If you use Eclipse, you can just run this class as a Java Application. If you use command line, please complie code and run it with the following commands: javac -cp lib/odfdom-java-0.8.7.jar:lib/simple-odf-0.6.6.jar HelloWorld.java java -cp lib/odfdom-java-0.8.7.jar;lib/simple-odf-0.6.6.jar;lib/xercesImpl.jar;. HelloWorld ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2015, 14:31 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
JDS2. Прицепил к проекту odfdom-0.8.7.jar и simple-odf-0.6.6.jar, указал путь к скачанной xerces-2_11_0 (возможно оттуда надо тоже просто какой-то jar прицепить) Конечно нужно - xercesImpl.jar. А "путь к скачанной xerces..." не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2015, 14:33 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Garrick , спасибо работает! ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2015, 15:33 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
Garrick , такой момент: Simple Java API for ODF довольно медленно читает файл. Т.е. например апач POI читает, загружает файл 10тыс строк за 7 секунд - отличная скорость. А Simple Java API for ODF те же 10тыс строк грузит 10 минут :( почти в 100 раз медленнее. Жить можно, но разница ощутимая и хотелось бы быстрее конечно. Обращаюсь поячеечно (как и в POI), позже попробую через cellRange. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2015, 16:03 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
CellRange тоже утомительно долго достает просто жуть как долго. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2015, 18:26 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
JDS, POI умеет обрабатывать файлы в потоке, как SAX, а тут, как я понимаю, только DOM. Т.е. оно сначала всё грузит в память, а потом начинает с этим работать. Увеличить память для приложения пробовали (-Xms)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2015, 10:57 |
|
||
|
Java чтение таблицы OpenOffice
|
|||
|---|---|---|---|
|
#18+
GarrickPOI умеет обрабатывать файлы в потоке, как SAX, а тут, как я понимаю, только DOM. Т.е. оно сначала всё грузит в память, а потом начинает с этим работать. Увеличить память для приложения пробовали (-Xms)? В том и дело, что грузит в память как-то сильно коряво (не оптимально), т.к. например читаем в CellRange по 1000 строк и потом читаем этот CellRange: Строки Время загрузки в CellRange (сек) Время чтения из CellRange (сек) 0 — 1000 58 471001 — 2000 106 482001 — 3000 157 49 Т.е. время чтения каждой следующей порции в CellRange растет так, как если бы мы каждый раз читали файл с самого начала. Да и чтение из памяти тоже на чтение 1000 строк в памяти тратить 50! секунд... Ну фиг знает... Насчет увеличения памяти - итак пол гига вроде как процесс жрет ( В общем может что-то не так делаю, но работает как-то очень не оптимально имхо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2015, 11:39 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39040185&tid=2124968]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
187ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 225ms |
| total: | 519ms |

| 0 / 0 |
