Разбор PDF-файлов, размещенных на веб-серверах - PullRequest
0 голосов
/ 25 октября 2010

Я использовал iText для разбора PDF-файлов.Он хорошо работает с локальными файлами, но я хочу проанализировать pdf-файлы, которые размещены на веб-серверах, например:

"http://protege.stanford.edu/publications/ontology_development/ontology101.pdf"

, но я не знаю, как ???пожалуйста, ответьте мне, как выполнить эту задачу, используя iText или другие библиотеки ... thx

Ответы [ 3 ]

0 голосов
/ 25 октября 2010

Использовать класс URLConnection:

URL reqURL = new URL("http://www.mysite.edu/mydoc.pdf" );
URLConnection urlCon = reqURL.openConnection();

Затем вы можете использовать метод URLConnection для извлечения контента. Самый простой способ:

InputStream is = urlCon.getInputStream();
byte[] b = new byte[1024]; //size of a buffer, can be any
int len;
while((len = is.read(b)) != -1){
    //Store the content in preferred way
}
is.close();
0 голосов
/ 25 октября 2010

Ничего подобного. Вы можете передать URL-адрес непосредственно в PdfReader и позволить ему обрабатывать потоковую передачу для вас:

URL url = new URL("http://protege.stanford.edu/publications/ontology_development/ontology101.pdf" );
PdfReader reader = new PDFReader( url );

JavaDoc - ваш друг .

0 голосов
/ 25 октября 2010

Вам необходимо скачать байты PDF-файла. Вы можете сделать это с помощью:

URL url = new URL("http://.....");
URLConnection conn = url.getConnection();

if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) { ..error.. }
if ( ! conn.getContentType().equals("application/pdf")) { ..error.. }

InputStream byteStream = conn.getInputStream();
try {
  ... // give bytes from byteStream to iText
} finally { byteStream.close(); }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...