Ler e enviar arquivo pdf

preciso ler arquivo PDF e enviar esse arquivo para outro pc na rede usando net send, como poderia fazer isso ???

para enviar envio assim

Runtime run = Runtime.getRuntime();
Process pr = run.exec( “net send ip MSG” );
pr.waitFor();

preciso do MSG que seria a mensagem que esta no arquivo PDF como poderia fazer isso ???
apos enviar ao MSG preciso apagar o arquivo PDF.

Dê uma olhada nessa página, pode lhe ser útil.

no caso todo o conteudo do arquivo PDF

String path = “/Users/daniel/Temp/mypdf.pdf”;
PDFTextStripper stripper = new PDFTextStripper();
PDDocument pdDoc = PDDocument.load(path);
StringWriter writer = new StringWriter();
stripper.writeText(pdDoc, writer);
System.out.println(writer.toString());

ficaria no writer, ai poderia enviar a string writer, seria isso ???

[quote=fabiodurgante]no caso todo o conteudo do arquivo PDF

String path = “/Users/daniel/Temp/mypdf.pdf”;
PDFTextStripper stripper = new PDFTextStripper();
PDDocument pdDoc = PDDocument.load(path);
StringWriter writer = new StringWriter();
stripper.writeText(pdDoc, writer);
System.out.println(writer.toString());

ficaria no writer, ai poderia enviar a string writer, seria isso ???[/quote]

Eu nunca usei essa API que lhe passei, mas você não leu com atenção o link que lhe passei.
E “writer” é escrita, não leitura. Portanto, o código que você deve analisar é esse:

String path = "/Users/daniel/Temp/mypdf.pdf";
       PdfReader reader = new PdfReader(path);
       int numberOfPages = reader.getNumberOfPages();
       PdfTextExtractor extractor = new PdfTextExtractor(reader);
       for (int i = 0;i<numberOfPages;i++) {
           System.out.println(extractor.getTextFromPage(i+1));
       }

Obviamente, ao invés de usar um “System.out.println” para imprimir o conteúdo em console, podes usar um StringBuffer para armazenar o conteúdo em String e depois usar, como julgar mais adequado.

import java.io.BufferedReader;  
import java.io.File;  
import java.io.FileInputStream;  
import java.io.FileWriter;  
import java.io.IOException;  
import java.io.InputStreamReader;  
  
import org.apache.pdfbox.pdfparser.PDFParser;  
import org.apache.pdfbox.pdmodel.PDDocument;  
import org.apache.pdfbox.util.PDFTextStripper;  
  
public class PdfParser {  
  
    public static void main(String[] args) throws IOException {  
  
        PdfParser pdf = new PdfParser();  
        pdf.setEnderecoRecurso("c:\\spedfiscal2.pdf");  
          
        String retorno = pdf.getConteudo();  
  
        FileWriter x = new FileWriter("c:\\teste.txt", false);  
        x.write(retorno);  
        x.close();  
          
          
        FileInputStream stream = new FileInputStream("c:\\teste.txt");  
          
        StringBuilder txt = new StringBuilder();  
        InputStreamReader streamReader = new InputStreamReader(stream);  
        BufferedReader reader = new BufferedReader(streamReader);  
        String line = null;  
          
        while ((line = reader.readLine()) != null) {  
      
            txt.append(line);  
                txt.append("\n");  
            if (line.contains(" ")) {  
                txt.append(line.replaceAll(" ", ";"));  
                txt.append("\n");  
            }  
        }  
          
        System.out.println(txt);  
          
    }  
  
    private String enderecoRecurso;  
  
    public void setEnderecoRecurso(String enderecoRecurso) {  
        this.enderecoRecurso = enderecoRecurso; // endereço dos ficheiros  
    }  
  
    public String getConteudo() {  
  
        File f = new File(this.enderecoRecurso);  
        FileInputStream is = null;  
        try {  
            is = new FileInputStream(f);  
        } catch (IOException e) {  
            System.out.println("ERRO: " + e.getMessage());  
            return null;  
        }  
  
        PDDocument pdfDocument = null;  
        try {  
            PDFParser parser = new PDFParser(is);  
            parser.parse();  
            pdfDocument = parser.getPDDocument();  
            PDFTextStripper stripper = new PDFTextStripper();  
            return stripper.getText(pdfDocument);  
        } catch (IOException e) {  
            return "ERRO: Não é possível abrir a stream" + e;  
        } catch (Throwable e) {  
            // Fazemos um catch, uma vez que precisamos de fechar o recurso  
            return "ERRO: Um erro ocorreu enquanto tentava obter o conteúdo do PDF"  
                    + e;  
        } finally {  
            if (pdfDocument != null) {  
                try {  
                    pdfDocument.close();  
                } catch (IOException e) {  
                    return "ERRO: Não foi possível fechar o PDF." + e;  
                }  
            }  
        }  
    }  
}  

nesse exemplo teria uma variavel que pega todo o conteudo do arquivo PDF
seria essa linha StringBuilder TXT = new StringBuilder();
o TXT que é a variavel que esta salvando todoso conteudo do PDF ???

Tu está testando o código ou querendo algo pronto ?
Estou começando a achar que falta esforço para compreender o código, para entender o que foi postado.
Como eu disse, eu nunca trabalhei com esta API, apenas a encontrei e lhe passei a referência.

Mas vamos lá, a priori o código funciona de forma simples, porque não faça um teste somente assim:

String path = "c:\\spedfiscal2.pdf"; PdfReader reader = new PdfReader(path); int numberOfPages = reader.getNumberOfPages(); PdfTextExtractor extractor = new PdfTextExtractor(reader); StringBuffer msg = new StringBuffer(); for (int i = 0;i<numberOfPages;i++) { msg.append(extractor.getTextFromPage(i+1)); } Runtime run = Runtime.getRuntime(); Process pr = run.exec( "net send ip " + msg.toString()); pr.waitFor();

Entenda o código, leia sobre ele, teste o código…