|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
|||||||||||
Работа с Excel через POI24.05.2020, 23:37. Показов 6115. Ответов 17
Добрый день.
Программа должна открыть страницу электронной таблицы и вывести на экран содержание двух ячеек.
Даже если программу сократить до:
0
|
|||||||||||
| 24.05.2020, 23:37 | |
|
Ответы с готовыми решениями:
17
Открыть файл excel через apache poi Apache POI Excel JAVA + EXCEL (APACHE.POI) |
|
26 / 18 / 8
Регистрация: 18.05.2016
Сообщений: 72
|
||||||||||||||||
| 25.05.2020, 00:50 | ||||||||||||||||
Но ексепшн связан похоже с чем то другим... У меня все работает Добавлено через 8 минут А, скорее всего у вас ошибка в :
1
|
||||||||||||||||
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
|
| 25.05.2020, 01:48 [ТС] | |
|
Странно, что работает. Вы меняли расширение файла tab.xlsx на tab.xls? Ведь в программе идет ссылка на xls файл, а приложен xlsx файл.
У Вас в средн разработки в строках "if(..." красным ничего не выделено? См. скриншоты.
0
|
|
|
26 / 18 / 8
Регистрация: 18.05.2016
Сообщений: 72
|
|||||||||||
| 25.05.2020, 02:05 | |||||||||||
|
а. хм, нет.
Я с xlsx пробовал Да я и попробовал то просто:
Добавлено через 9 минут а также используйте CellType для проверки какому типу принадлежит Что то типа этого:
1
|
|||||||||||
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
|
| 25.05.2020, 05:40 [ТС] | |
|
Наверное это звучит ужасно, но я работал без maven, скачивал библиотеку в ручную. Один архив. Потом библиотеку добавлял в idea.
Постараюсь разобраться с maven.
0
|
|
|
26 / 18 / 8
Регистрация: 18.05.2016
Сообщений: 72
|
|
| 25.05.2020, 09:56 | |
|
И вам нужно сказчать Apache poi and poi-ooxml
1
|
|
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
||||||
| 26.05.2020, 17:01 [ТС] | ||||||
|
Добрый день.
С maven полностью не разобрался. Скачал библиотеку в ручную и установил jar файлы в idea через CTRL + SHIFT + ALT +S (см.скриншот). Ниже текст программы:
Файл tab.xlsx прилагаю. PS Idea переустанавливал, хотя осознавал, что дело не в ней.
0
|
||||||
|
26 / 18 / 8
Регистрация: 18.05.2016
Сообщений: 72
|
||||||
| 26.05.2020, 17:14 | ||||||
|
Используйте так:
1
|
||||||
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
|
| 26.05.2020, 20:55 [ТС] | |
|
Как я понял, мы отказались от класса XSSFCell в пользу CellType.
Результат во вложении.
0
|
|
|
26 / 18 / 8
Регистрация: 18.05.2016
Сообщений: 72
|
||||||
| 26.05.2020, 21:14 | ||||||
|
Вы не правильно понимаете.
XSSFCell мы берем определенную колонку нашей строки заданной переменной row. CellType это enum класс для проверки какому типу колонка принадлежит. Просто вставьте весь код и посмотрите.
0
|
||||||
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
|
| 26.05.2020, 21:24 [ТС] | |
|
Вставил ваш код, только поменял пусть к файлу и его расширение.
Вот результат: ""C:\Program Files\Java\jdk1.8.0_144\bin\java.exe" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2020.1.1\lib\idea_rt.jar=64447:C:\Progra m Files\JetBrains\IntelliJ IDEA Community Edition 2020.1.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_144\jre\lib\charsets .jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\deploy.j ar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\acce ss-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\cldr data.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\dnsn s.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\jacc ess.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\jfxr t.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\loca ledata.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\nash orn.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\sune c.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\sunj ce_provider.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\sunm scapi.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\sunp kcs11.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\ext\zipf s.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\javaws.j ar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\jce.jar; C:\Program Files\Java\jdk1.8.0_144\jre\lib\jfr.jar; C:\Program Files\Java\jdk1.8.0_144\jre\lib\jfxswt.j ar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\jsse.jar ;C:\Program Files\Java\jdk1.8.0_144\jre\lib\manageme nt-agent.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\plugin.j ar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\resource s.jar;C:\Program Files\Java\jdk1.8.0_144\jre\lib\rt.jar;C :\Users\User\IdeaProjects\untitled6\src\ target\classes;C:\_forJava\commons-codec-1.13.jar;C:\_forJava\poi-4.1.2.jar;C:\_forJava\poi-ooxml-4.1.2.jar;C:\_forJava\poi-ooxml-schemas-4.1.2.jar;C:\_forJava\xmlbeans-3.1.0.jar;C:\_forJava\commons-collections4-4.4.jar;C:\_forJava\commons-collections4-4.4\commons-collections4-4.4.jar;C:\_forJava\commons-collections4-4.4\commons-collections4-4.4-tests.jar;C:\_forJava\commons-collections4-4.4\commons-collections4-4.4-javadoc.jar;C:\_forJava\commons-collections4-4.4\commons-collections4-4.4-sources.jar;C:\_forJava\commons-collections4-4.4\commons-collections4-4.4-test-sources.jar;C:\_forJava\poi-bin-4.1.2-20200217\poi-4.1.2\poi-4.1.2.jar;C:\_forJava\poi-bin-4.1.2-20200217\poi-4.1.2\poi-ooxml-4.1.2.jar;C:\_forJava\poi-bin-4.1.2-20200217\poi-4.1.2\poi-examples-4.1.2.jar;C:\_forJava\poi-bin-4.1.2-20200217\poi-4.1.2\poi-excelant-4.1.2.jar;C:\_forJava\poi-bin-4.1.2-20200217\poi-4.1.2\poi-scratchpad-4.1.2.jar;C:\_forJava\poi-bin-4.1.2-20200217\poi-4.1.2\poi-ooxml-schemas-4.1.2.jar" CC ! Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/compress/archivers/zip/ZipFile at org.apache.poi.openxml4j.opc.OPCPackage. open(OPCPackage.java:307) at org.apache.poi.ooxml.util.PackageHelper. open(PackageHelper.java:47) at org.apache.poi.xssf.usermodel.XSSFWorkbo ok.<init>(XSSFWorkbook.java:309) at CC.main(CC.java:12) Caused by: java.lang.ClassNotFoundException: org.apache.commons.compress.archivers.zi p.ZipFile at java.net.URLClassLoader.findClass(URLCla ssLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoa der.java:424) at sun.misc.Launcher$AppClassLoader.loadCla ss(Launcher.java:335) at java.lang.ClassLoader.loadClass(ClassLoa der.java:357) ... 4 more Process finished with exit code 1" Интересно, что на скриншоте видно несколько строк, а если выделить и вставить, то видно, какие jar подключаются.
0
|
|
|
26 / 18 / 8
Регистрация: 18.05.2016
Сообщений: 72
|
|
| 26.05.2020, 21:33 | |
|
Чтобы решить вышеуказанную проблему, загрузите стандартные файлы сжатия Apache с https://commons.apache.org/pro... mpress.cgi
Попробуйте скачать и заимпортировать. Как видите, использование maven сильно облегчает задачу.
1
|
|
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
||||||
| 26.05.2020, 22:25 [ТС] | ||||||
|
Не помогло. Пытаюсь разобраться с maven. Я его скачал, установил, переменные среды прописал.
Далее файл - новый проект - мавен. Получил такой файл: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>prMaven1</artifactId> <version>1.0-SNAPSHOT</version> </project> Не пойму, куда вставлять код программы :/
0
|
||||||
|
26 / 18 / 8
Регистрация: 18.05.2016
Сообщений: 72
|
|
| 26.05.2020, 22:41 | |
|
всмысле куда?
Где обычно вы код пишете туда. В данном случае в main. src/main/java - Ваш класс - main method
1
|
|
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
|
| 27.05.2020, 14:32 [ТС] | |
|
Разместил. Не понимаю как запустить файл? Теперь я его не могу даже редактировать? Или просто надо подождать, чтобы мавен загрузил библиотеки? Скриншот прилагаю.
0
|
|
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
|
| 27.05.2020, 14:43 [ТС] | |
|
Пытался откомпилировать проект. См. скриншот.
0
|
|
|
26 / 18 / 8
Регистрация: 18.05.2016
Сообщений: 72
|
||||||
| 27.05.2020, 15:13 | ||||||
Сообщение было отмечено vskh как решение
Решение
ну все
запускайте мейн как вы делаете обычно в intellij На случай если опять не будет работать прилагаю проект, ибо тема раздута уже слишком для простых вопросов которые есть в гугле. Скорее всего в pom.xml вам нужно будет заменить
Ну и путь до файла смените, все. ИМПОРТИРУЙТЕ КАК MAVEN PROJECT File->open->pom.xml->Open as Project Просто запустите как вы делаете это с обычным проектом. Все.
1
|
||||||
|
1 / 2 / 0
Регистрация: 20.02.2017
Сообщений: 95
|
|
| 27.05.2020, 18:32 [ТС] | |
|
Благодарю за терпение и внимание к моему вопросу.
1
|
|
| 27.05.2020, 18:32 | |
|
Помогаю со студенческими работами здесь
18
POi и Excel, как соединить? Apache POI и таблицы Excel Работа с Excel через Microsoft.Office.Interop.Excel Копирование стиля ячеек excel с использованием apach poi Apach POI работа с Drawing Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|