Java: trzeba utworzyć plik PDF z bajtów
Z tabeli DB2 mam blob, który konwertuję do tablicy bajtów, dzięki czemu mogę z nim pracować. Muszę wziąć tablicę bajtów i utworzyćPDF
z tego.
Oto co mam:
static void byteArrayToFile(byte[] bArray) {
try {
// Create file
FileWriter fstream = new FileWriter("out.pdf");
BufferedWriter out = new BufferedWriter(fstream);
for (Byte b: bArray) {
out.write(b);
}
out.close();
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
}
}
AlePDF
nie ma racji, ma kilka czarnych linii biegnących od góry do dołu.
Byłem w stanie stworzyć poprawnePDF
pisząc aplikację internetową, używając zasadniczo tego samego procesu. Podstawowa różnica między aplikacją internetową a kodem dotyczyła tej linii:
response.setContentType("application/pdf");
Wiem, że tablica bajtów to aPDF
i można to zrobić, ale mój kod wbyteArrayToFile
nie stworzy czystegoPDF
.
Jakieś pomysły na to, jak mogę to sprawić?