В процессе создания приложения понадобилось чтение .pdf
с сайта. Каким образом можно вычленить текст файла?
При помощи Jsoup я могу спарсить страницу со ссылками, а iText позволит мне прочитать pdf, но что поможет "открыть" pdf, не скачивая его на устройство?
Если перевести на русский язык, вы хотите получить возможность парсинга PDF файла в потоке, то есть последовательно, а не всего файла в целом.
К сожалению, в большинстве случаем это невозможно. Первая версия стандарта ISO-32000-1, описывающего PDF формат вообще говорится:
Conforming readers should read a PDF file from its end.
Ну то есть читать надо с конца...
Во второй версии немного по другому, но не менее безрадостно:
With the exception of linearized PDF files, all PDF files should be read using the trailer and cross-reference table as described in the following subclauses. Reading a non-linearized file in a serial manner is not reliable because of the way objects are to be processed after an incremental update. (See 6.3.2, "Conformance of PDF processors".)
В общем в итоге, вам по любому придется сначала прочитать/скачать весь PDF файл и только потом провести его разбор/парсинг.
Если вы пишите клиентское приложение - то никак нельзя прочесть файл не скачав его.
Однако вы можете воспользоваться онлайн-сервисами которые скачают его за вас и выдадут вам представление в виде plaintext из которого вы сможете вычленить нужные вам слова. Со стороны клиента вы вообще с pdf не будете работать в этом случае.
В конце концов вы можете такой сервис сами написать и использовать его в клиентском приложении.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
При входе в IDE NetBeans, выводит предупреждение библиотеки JUnit4 и Junit не найдены
Нужно изучить JSP, которые входят в java EEПытаюсь настроить intelij-idea educational edition на использование этой технологии
У меня две задачи, создать пустое окно и создать кнопкиОкно я смог создать и все работает, но вот со второй задачей никак: иконки на кнопках...
создаю график прямой лемниската Бернулли в java, она должна выглядеть так: