1. камеры
  2. Аудио & Электроника автомобиля
  3. Главная Аудио
  4. Личная Аудио
  5. телевизоры
  6. Умный дом
  >> Россия Электронный Технологии >  >> Умный дом >> Умная жизнь

Как читать PDF-файл в Java

Нетрудно читать PDF-файлы на Java, используя легкодоступные библиотеки. Чтение PDF-файлов позволяет вам писать программы на Java, которые могут обрабатывать текст в этих файлах. Одним из вариантов чтения PDF-файлов является бесплатная библиотека PDFBox с открытым исходным кодом, доступная в Apache. Платформа разработки Eclipse Java упрощает эту работу и управляет библиотеками, которые вы будете загружать. Чтобы использовать эти библиотеки Java, вам необходимо быть знакомым с программированием на Java.

Соберите необходимые библиотеки

Шаг 1

Загрузите Java JDK с веб-сайта Sun. Это исполняемый файл, который вы можете установить в своей системе, запустив его. Доступны версии для Windows, Mac и Linux. Нажмите на красную кнопку «Скачать». При появлении запроса сохраните файл с именем «jdk-6uxx-windows-xxx.exe». Сохраните этот файл и дважды щелкните его, чтобы запустить программу установки Java.

Шаг 2

Загрузите систему разработки Eclipse и разархивируйте ее в каталог верхнего уровня. Выберите «Eclipse IDE для разработчиков Java». Это запустит загрузку «eclipse-java-galileo-SR2-win32.zip». Дважды щелкните файл, чтобы разархивировать его после завершения загрузки. Выберите расположение корневого каталога «C:», чтобы разархивировать Eclipse.

Шаг 3

Запустите Eclipse, дважды щелкнув «eclipse.exe» в каталоге, который вы только что создали, разархивировав zip-файл eclipse. В системе Eclipse создайте проект с именем «PrintPdf». Выберите «Файл», затем «Новый», затем «Проект Java». Введите имя проекта «PrintPdf» в появившемся диалоговом окне. Убедитесь, что выбран переключатель «Создать отдельные папки для исходных файлов и файлов классов». Нажмите "Готово".

Шаг 4

Создайте папку «lib» в вашем проекте «PrintPdf». Щелкните правой кнопкой мыши проект «PrintPdf» и выберите «Создать», а затем «Папка». Введите имя "lib" и нажмите "Готово".

Шаг 5

Загрузите Apache «PDFBox.jar» с сайта Apache и скопируйте его в каталог lib, который вы только что создали. На той же веб-странице загрузите файлы «fontbox-nn.jar» и «jempbox-nn.jar». В каждом случае, когда вы нажимаете на этот файл jar, вы попадаете на страницу, где вы можете выбрать один из нескольких серверов, которые могут предоставить этот файл. Выберите каждый из них, и каждый файл jar будет загружен. Скопируйте каждый файл jar в только что созданный каталог lib.

Шаг 6

Таким же образом загрузите пакет Apache log4j.jar и скопируйте файл log4j.jar в каталог. Библиотека Apache PDFBox использует эту библиотеку журналов Apache, поэтому этот файл должен присутствовать.

Шаг 7

Загрузите пакет Apache Commons Discovery в виде zip-файла. Дважды щелкните zip-файл, выберите «commons-discovery-nn.jar» и распакуйте его в каталог lib.

Шаг 8

В Eclipse щелкните каталог «lib» и нажмите «F5». Убедитесь, что отображаются все добавленные вами jar-файлы.

Шаг 9

Щелкните правой кнопкой мыши проект PrintPDF и выберите «Свойства». Выберите «Путь сборки Java» и перейдите на вкладку «Библиотеки». Нажмите «Добавить банки» и перейдите в каталог lib, который вы только что создали, и добавьте «commons-logging-nn.jar», «fontbox-nn.jar», «jempbox-nn.jar», «log4j-nn.jar». ," и "pdfbox-nn.jar." Нажмите "ОК".

Напишите код для чтения PDF-файлов

Шаг 1

Щелкните правой кнопкой мыши папку «src» вашего проекта «PrintPDF» и выберите «Создать» и «Пакет». Создайте пакет, используя любое осмысленное имя. Например, назовите пакет «com.pdf.util». Нажмите "Готово".

Шаг 2

Щелкните правой кнопкой мыши имя только что созданного пакета и выберите «Создать», а затем «Класс». Создайте класс с именем «PDFTextParser». Обязательно установите флажок "public static void main...", чтобы система создала "основной" метод.

Шаг 3

Отредактируйте метод main в классе PDFTextParser, чтобы он содержал следующий код:

public static void main(String args[]){ PDFTextParser pdf =new PDFTextParser("data/javaPDF.pdf") GO //распечатать результаты System.out.println(pdf.getParsedText()) GO

Обратите внимание, что файл, который вы хотите распечатать, указывается в конструкторе PDFTextParser ("data/JavaPDF.pdf"). С тем же успехом это может быть аргумент командной строки:

PDFTextParser pdf = new PDFTextParser(argv[0])

ПЕРЕЙТИ

или выбранный из интерфейса GUI.

Он создает экземпляр класса PDFTextParser, а затем вызывает его метод getParsedText.

Шаг 4

Вставьте следующий код сразу под строкой верхнего класса «открытый класс PDFTextParser», который был создан для вас.

частный парсер PDFParser =null GO

// Extract text from PDF Document
public PDFTextParser(String fileName) {
 File file = new File(fileName)

GO if (!file.isFile()) { System.err.println("Файл " + fileName + " не существует.") GO } //Настроить экземпляр анализатора PDF try { parser =new PDFParser(new FileInputStream( file)) GO } catch (IOException e) { System.err.println("Невозможно открыть анализатор PDF. " + e.getMessage()) GO } } //-------------- ------------------ public String getParsedText() { PDDocument pdDoc =null GO COSDocument cosDoc =null;
Строка parsedText =null; ПЕРЕЙТИ

try { 
 PDFTextStripper pdfStripper = new PDFTextStripper()

GO parser.parse() GO cosDoc =parser.getDocument() GO pdDoc =новый PDDocument(cosDoc) GO

//get list of all pages
 List<PDPage> list = pdDoc.getDocumentCatalog().getAllPages()

ПЕРЕЙТИ

//note that you can print out any pages you want
 //by choosing different values of the start and end page
 pdfStripper.setStartPage(1); //1-based
 int length = list.size(); //total number of pages
 pdfStripper.setEndPage(length); //last page

 //get the text for the pages selected
 parsedText = pdfStripper.getText(pdDoc)

GO } catch (IOException e) { System.err .println("Исключение при анализе PDF-документа." + e.getMessage()) GO } finally { try { if (cosDoc !=null) cosDoc.close() GO if (pdDoc !=null) pdDoc.close() GO } catch (IOException e) { e.printStackTrace() GO } }
вернуть parsedText GO

Шаг 5

Запустите программу. Щелкните правой кнопкой мыши класс PDFTextParser и выберите «Запуск от имени», а затем «Программа Java». Программа должна запуститься и распечатать текстовое содержимое PDF-файла, которое вы ввели в свой код.

Подавить сообщение об ошибке запуска Log4j

Шаг 1

Создайте файл конфигурации, чтобы подавить сообщение об ошибке log4j системы ведения журналов Java, создаваемое, когда она не может найти файл конфигурации при запуске. Щелкните правой кнопкой мыши папку «src» проекта PrintPDF и выберите «Создать», а затем «Файл». Назовите файл «log4j.properties». Eclipse отобразит пустой экран для этого нового файла.

Шаг 2

Вставьте следующие строки в пустой экран, представляющий файл «log4j.properties».

Установите уровень корневого регистратора на DEBUG, а его единственное дополнение на A1. log4j.rootLogger=ПРЕДУПРЕЖДЕНИЕ, A1

A1 установлен как ConsoleAppender. log4j.appender.A1=org.apache.log4j.ConsoleAppender

A1 использует PatternLayout. log4j.appender.A1.layout=org.apache.log4j.PatternLayout log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

Шаг 3

Сохраните файл «log4j.properties». Присутствие этого файла в каталоге «src» верхнего уровня подавляет сообщение о запуске log4j и любые тривиальные сообщения регистрации. Система log4j распечатает только фактические ошибки.

Совет

Существует также ряд коммерческих пакетов, которые можно использовать для извлечения текста из PDF-файлов, но они недешевы.


  1. Как читать PDF-файл на мобильный телефон
  2. Как читать AT &Amp; T файла
  3. Как читать PDF-файл на мобильный телефон
  4. Как читать PDF-файлов на IPOD
  5. Как установить JAR-файл