Não é difícil de ler arquivos PDF em Java usando bibliotecas que estão prontamente disponíveis . Lendo arquivos PDF permite escrever programas em Java que podem processar o texto nesses arquivos. Uma opção para leitura de arquivos PDF é a , biblioteca PDFBox open-source gratuito disponível a partir de Apache . A plataforma de desenvolvimento Eclipse Java torna este trabalho mais fácil e gerencia as bibliotecas será download. Você precisa estar familiarizado com programação Java para fazer uso dessas bibliotecas Java. Instruções
Reúna bibliotecas necessárias
1
Faça o download do Java JDK no site da Sun . Este é um arquivo executável que você pode instalar em seu sistema , executando-o . As versões estão disponíveis para Windows, Mac e Linux. Clique no botão vermelho \\ "Download \\ " . Salvar um arquivo chamado \\ " jdk- 6uxx -windows- xxx.exe \\ " quando solicitado. Salve o arquivo e clique duas vezes sobre ele para iniciar o instalador Java.
2
Faça o download do sistema de desenvolvimento Eclipse e descompactá-lo em um diretório de nível superior. Selecione \\ " Eclipse IDE for Java Developers. \\ " Isso vai iniciar a descarga do \\ "eclipse -java- galileo - SR2 - win32.zip . \\ " Dê um duplo clique no arquivo para descompactá-lo após o download é completa . Selecione o \\ "C: \\ " local do diretório raiz para descompactar Eclipse
3
Iniciar Eclipse , clicando duas vezes em \\ " eclipse.exe \\ " no diretório . apenas criado por descompactar o arquivo zip eclipse . No sistema de Eclipse , crie um projeto chamado \\ " PrintPDF . \\ " Select \\ "Arquivo \\ " e depois \\ " Novo \\ ", então \\ " projeto Java. \\ " Digite o nome do projeto \\ " ; PrintPDF \\ "na caixa de diálogo que aparece. Certifique-se de que a opção está seleccionada que diz \\ "Criar pastas separadas para arquivos de origem e de classe. \\ " Clique em \\ " Concluir. \\ "
4
Criar um lib \\ " \\ " pasta em seu \\ " projeto PrintPDF \\ " . Botão direito do mouse sobre o projeto \\ " PrintPDF \\" e selecione \\ " Novo \\ " e depois \\ "Pasta . \\ " Digite o nome \\ " lib \\ " e clique em \\ " Concluir. \\ "
5
Baixar Apache \\ " PDFBox.jar \\ "do site do Apache e copiá-lo no diretório lib que você acabou de criar. Na mesma página web, baixar o arquivo \\ " fontbox - nn.jar \\ " eo arquivo \\ " jempbox - nn.jar \\ " . Em cada caso, quando você clica no arquivo jar que , ele irá levá-lo para uma página onde você pode selecionar um dos vários servidores que podem fornecer este arquivo . Escolha cada um deles e cada arquivo jar vai baixar . Copie cada arquivo jar no diretório lib que você acabou de criar.
6
Baixe o pacote log4j.jar Apache na mesma forma e copiar o arquivo para o diretório log4j.jar . A biblioteca Apache PDFBox usa essa biblioteca de log Apache, de modo que este arquivo precisa estar presente.
7
Baixe o pacote Apache Commons descoberta como um arquivo zip. Dê um duplo clique no arquivo zip , selecione a opção " commons- discovery- nn.jar \\" \\ e extraí-lo para o diretório lib.
8
Eclipse , clique sobre a \\ " " diretório e pressione \\ " lib \\ F5. \\ "Certifique-se que todos os arquivos jar que você adicionou são exibidos.
9
clique com o botão direito do mouse no projeto e selecione PrintPDF \\ " Propriedades . \\ "Select \\ " Java Build Path \\ "e selecione o \\ " guia Bibliotecas \\ " . Clique em \\ " Adicionar frascos \\" e vá para o diretório lib que você acabou de criar e adicionar \\ " commons- logging- nn.jar \\ " \\ " fontbox - nn.jar , \\ " \\ " ,. jempbox - nn.jar , \\ "\\" log4j - nn.jar , \\ "e \\ " pdfbox - nn.jar \\ "Clique em \\" OK \\ "
< br. > Como escrever o código para ler PDFs
10
clique com o botão direito do mouse sobre a pasta \\ " src \\ " da sua \\ project " PrintPDF \\" e selecione \\ " Novo \\ " e \\ " Pacote . \\ "Criar um pacote usando qualquer nome significativo . Por exemplo , o nome do pacote \\ " com.pdf.util . \\ " Clique em \\ " Concluir. \\ "
11
clique com o botão direito do mouse sobre o nome do pacote que você acabou de criar e selecione \\ " Novo \\ " e depois " de classe. \\" \\ Crie uma classe chamada \\ " PDFTextParser . \\ " Não esqueça de clicar na caixa de seleção marcada \\ " public static void main ... \\ " para que o sistema irá criar um \\ método " main \\ " .
12
Edite o \\ método " main \\ " na classe " PDFTextParser \\" \\ para conter o seguinte código :
public static void main ( string args [] ) {
PDFTextParser pdf = new PDFTextParser (\\ "Dados /javaPDF.pdf \\") < br /> GO
//imprimir os resultados
System.out.println ( pdf.getParsedText ()) />
}
;
Note que o arquivo que você deseja imprimir está explicitada no construtor para PDFTextParser (\\ "Dados /JavaPDF.pdf \\"). Ele poderia muito bem ser um argumento de linha de comando:
PDFTextParser pdf = new PDFTextParser ( argv [0] )
GO
< br /> ou selecionado a partir de uma interface GUI.
Ele cria uma instância da classe PDFTextParser , em seguida, chama de " getParsedText \\ " seu método \\.
13
Insira o seguinte código logo abaixo do topo de linha da classe \\ " public class PDFTextParser \\ ", que foi criado para você.
PDFParser privado parser = null
GO
//extrair o texto de documento PDF
PDFTextParser pública (String fileName ) {file
arquivo = new File ( fileName )
, ( ! file.isFile () ) GO
Se { System.out.println (\\ "Arquivo \\ " + fileName + \\ " . não existe \\")
GO
} //Configure instância de analisador PDF
try {
parser = new PDFParser (new FileInputStream (arquivo) )
GO } catch (IOException e) { System.out.println
(\\ " Não é possível abrir PDF Analisador \\. " + e.getMessage () )
GO } }
//--------------------- ----------
getParsedText public String () {
PDDocument pdDoc = null
GO COSDocument cosDoc = null; < br /> Cordas parsedText = null;
GO
try {
PDFTextStripper pdfStripper = new PDFTextStripper ()
GO < br /> parser.parse ()
GO cosDoc = parser.getDocument ( )
GO pdDoc = new PDDocument ( cosDoc ) < br /> GO />
//lista de todas as páginas obter
lista lista = pdDoc.getDocumentCatalog ( ). getAllPages ()
GO < br />
//note que você pode imprimir todas as páginas que você quer
//escolhendo diferentes valores do início e do fim da página
pdfStripper.setStartPage ( 1 ) , com base em 1 //comprimento
int = list.size ( ) //número total de páginas
pdfStripper.setEndPage (comprimento ) //última página
< br /> //obtém o texto para as páginas selecionadas
parsedText = pdfStripper.getText ( pdDoc )
GO } catch (IOException e) {
System.err
. println (\\ "Uma exceção ocorreu na análise do documento PDF. \\ "
+ e.getMessage ) ()
GO ;} finally { try {
if (! cosDoc = null)
cosDoc.close ()
GO if ( pdDoc ! = null)
pdDoc.close ( )
GO } catch (IOException e) {
e.printStackTrace () < br /> GO
} } />
GO }
14 Execute o programa . Botão direito do mouse sobre a classe PDFTextParser e clique em \\ " Executar como \\ " e depois em \\ " programa Java. \\ " O programa deve ser executado e imprimir o conteúdo de texto do arquivo PDF que você inseriu em seu código.
mensagem de erro Repressão log4j Startup
15
Criar um arquivo de configuração para suprimir a mensagem de erro log4j sistema de log Java criado quando não é possível encontrar um arquivo de configuração quando ele inicia . Botão direito do mouse sobre a pasta \\ " src \\ " do projeto PrintPDF e selecione \\ " Novo \\ " e depois \\ "File . \\ " Nomeie o arquivo \\ " log4j.properties \\ " Eclipse exibirá uma tela vazia para este novo arquivo .
16
cole as seguintes linhas na tela vazia representando os \\ " log4j.properties \\ " de arquivos.
; # definir nível logger raiz para depurar e sua única appender para A1
log4j.rootLogger = WARN , A1
# A1 está definido para ser um ConsoleAppender < . . br /> log4j.appender.A1 = org.apache.log4j.ConsoleAppender
# A1 usa PatternLayout .
log4j.appender.A1.layout = org.apache
log4j.appender.A1.layout.ConversionPattern =% - 4r [ % t ]% - 5p % c % x log4j.PatternLayout - . % m% n
17
Salve o \\ " \\" arquivo log4j.properties . A presença deste arquivo no diretório de nível superior \\ "src \\" vai suprimir a mensagem de inicialização do log4j e quaisquer mensagens de log triviais. O sistema log4j irá imprimir somente os erros reais.