Hallo,
ich bekomme eine PDF Datei innerhalb einer Text Datei übertragen (Stichwort HL7 ORU Nachricht).
Die PDF Datei ist im Plain-Text vorhanden (nicht Base64 oder UU-codiert).
Die Zeilenumbrüche sind ursprünglich als “\x0A” bzw. “\x0D” vorhanden, die ich in “\r” bzw. "
" umwandle.
Wenn ich das PDF Dokument dann als “test.pdf” anlege, kann ich das Dokument öffnen, jedoch ohne Inhalt.
Im Texteditor sieht das PDF Dokument für mich normal aus…
BufferedReader br = new BufferedReader(new FileReader("tempDump.hl7"));
String pdf = null;
try {
String line = br.readLine();
while ((line = br.readLine()) != null) {
if(line!=null && line.length()>0) {
//*log.info("Found: "+line);
if (line.contains("%PDF")) {
int startIndex = line.indexOf("%PDF");
String pdfHandle = line.substring(startIndex);
int endIndex = pdfHandle.indexOf("|");
pdf = pdfHandle.substring(0, endIndex);
pdf = pdf.replace("\\x0D\\", "\r").replace("\\x0A\\", "
");
}
}
}
} finally {
br.close();
}
byte[] bytePDF = pdf.getBytes();
File someFile = new File("pdf.pdf");
OutputStream fos;
fos = new FileOutputStream(someFile);
fos.write(bytePDF);
fos.flush();
fos.close();
log.info(pdf);
}```
Kann mir jemand einen Tip geben was ich falsch mache bzw. wie ich den Fehler im PDF aufspüren kann?
GGK