How to separate a PDF file line by line in Java?

3

I need a way that I can read line by line from a pdf file.

I'm reading the entire pdf file at once from this command line:

String conteudo=PdfTextExtractor.getTextFromPage(reader, 1);

But I need to read row by line, since I need to know what line my occurrence is.

Any ideas?

    
asked by anonymous 11.04.2014 / 16:27

1 answer

3

Just like the hint given by @Renan, you already have all your text in a String variable, instead of looking for the text you want in the PDF look for it in your String

//aqui voce tem toda a pagina em uma String
String pagina = PdfTextExtractor.getTextFromPage(reader, 1);

//separe em um vetor de Strings cada linha, o final da linha sempre será \n
String[] linhas = pagina.split("\n");

//agora percorra seu vetor de Strings procurando o texto que deseja
int numLinha = 1;
boolean achou = false;
for(String s: linhas) {
    //quando encontrar, marque um flag e caia fora do loop
    if(s.contains("o texto que eu quero")) {
        achou = true;
        break;
    }
    numLinha++;
}

//pronto, agora voce tem a linha que está o texto que procura
if(achou) {
    System.out.println("Seu texto está na linha:" + numLinha);
}
else {
    System.out.println("texto não encontrado");
}
    
11.04.2014 / 16:43