Ich versuche, aus einer PDF-Datei mit Dateiströmen zu lesen, und ich möchte es in einem Schreibgerät im codierten cp1252-Format schreiben. Folgendes ist der Code:Lesen von UTF-8-formatierten PDF-Datei und Schreiben auf einen Schreiber im cp1252-Format
byte buf[] = new byte[8192];
InputStream is = new FileInputStream(f);
ByteArrayOutputStream oos = new ByteArrayOutputStream();
int c=0;
while ((c = is.read(buf)) != -1) {
oos.write(buf, 0, c);
}
byte out[] = oos.toByteArray();
String str = oos.toString(out,"UTF-8");
char[] ch = str.toCharArray();
writer.write(ch);
is.close();
oos.close();
Aber die Ausgabe ist fehlerhaft, da der Text nicht lesbar ist (nicht richtig konvertiert). Wie behebe ich das?
Was enthält "f"? Ist das eine tatsächliche PDF-Datei? –
* UTF-8-formatierte PDF-Datei * - was ist das? PDF ist ein Binärformat. Punkt. – mkl
Es ist eine pdf-Datei: Datei f = neue Datei ("C: \ Users \ myfile.pdf"); Ich habe die Eigenschaften der Datei ausgecheckt und in Eclipse heißt es, es ist standardmäßig UTF-8 codiert –