2016-02-26 3 views
-1

Я пытаюсь прочитать PDF через iText API, PDF Reader. Когда я пытаюсь напечатать количество страниц в моей консоли, я всегда получаю нуль, хотя мой PDF-файл имеет 10 страниц, и все 10 страниц содержат в нем некоторый контент (они не пустые). Ниже приведен фрагмент кода, который я использовал, и вывод консоли.reader.getNumberOfPages() всегда печатает ноль

Пожалуйста, помогите мне решить эту проблему,

public static void main(String[] args) { 
    try { 
     PdfReader reader = new PdfReader("D:\\JEE(Main)_AcknowledgementPage (1).pdf"); 
     int number_of_pages = reader.getNumberOfPages(); 
     System.out.println("Number of pages is ...."+number_of_pages); 
     for (int i = 0; i < number_of_pages;) { 
      System.out.println("Inside for loop"); 
     } 
    } catch (Exception i) { 
     System.out.println(i); 
    } 
} 

выход Мои консоли:

Number of pages is ....0 
+1

Возможно, ваш файл PDF фактически является файлом XFA. У вас такая же проблема с обычным PDF-файлом? Также: вы используете iText 1.2.3 ??? Это безумие! Пожалуйста, обновите! –

ответ

1

Вы используете правильный API. Он возвращает правильное количество страниц для меня. Однако ваш для петли неправильно

for (int i = 0; i < number_of_pages;) { 
      System.out.println("Inside for loop"); 
     } 

Вы не увеличивают значение I в любом месте после я < NUMBER_OF_PAGES. Это должно быть так.

for (int i = 0; i < number_of_pages; i++) { 
     System.out.println("Inside for loop"); 
    } 

Здесь вы идете, полный код здесь, что я использую.

PdfReader reader = new PdfReader(
      "C:/anil/code/StackOverFlow/res/mySample.pdf"); 
int number_of_pages = reader.getNumberOfPages(); 
System.out.println("Number of pages is ...."+number_of_pages); 
for (int i = 0; i < number_of_pages; i++) { 
     System.out.println("Inside for loop"); 
} 
+0

Я использую API iText 1.2.3, и это для цикла было ошибкой ввода. Можете ли вы поделиться кодом, который используете? – Anju

+0

Я использовал iText-2.1.4 и протестировал вышеуказанный код с помощью нескольких файлов. Возможно, что-то не так с вашим pdf-файлом (защищенным паролем или неспособным прочитать), вот что я угадываю – Anil

+0

Я изменил банку до 2.1.4, и она отлично работала :) Большое спасибо Anil :) – Anju

Смежные вопросы