Mit Java:
Ich habe eine byte[]
die eine Datei darstellt.
Wie schreibe ich dies in eine Datei (z.B.. C:\myfile.pdf
)
Ich weiß, dass es mit InputStream gemacht wird, aber ich kann nicht scheinen, um es heraus zu arbeiten.
Mit Java:
Ich habe eine byte[]
die eine Datei darstellt.
Wie schreibe ich dies in eine Datei (z.B.. C:\myfile.pdf
)
Ich weiß, dass es mit InputStream gemacht wird, aber ich kann nicht scheinen, um es heraus zu arbeiten.
使用方法 Apache Commons IO
FileUtils.writeByteArrayToFile(new File("pathname"), myByteArray)
Oder, wenn Sie darauf bestehen, sich selbst Arbeit zu machen...
try (FileOutputStream fos = new FileOutputStream("pathname")) {
fos.write(myByteArray);
//fos.close(); There is no more need for this line since you had created the instance of "fos" inside the try. And this will automatically close the OutputStream
}
Ohne Bibliotheken:
try (FileOutputStream stream = new FileOutputStream(path)) {
stream.write(bytes);
}
Mit Google Guava :
Files.write(bytes, new File(path));
Mit Apache Commons :
FileUtils.writeByteArrayToFile(new File(path), bytes);
Alle diese Strategien erfordern, dass Sie irgendwann auch eine IOException abfangen.
Ebenfalls seit Java 7 ist eine Zeile mit java.nio.file.Files:
Files.write(new File(filePath).toPath(), data);
Dabei ist data Ihr Byte[] und filePath ein String. Sie können auch mehrere Optionen zum Öffnen von Dateien mit der Klasse StandardOpenOptions hinzufügen. Fügen Sie Throws hinzu oder umgeben Sie sie mit try/catch.
De Java 7 aufwärts können Sie die Versuch-mit-Ressourcen Anweisung, um Ressourcenverluste zu vermeiden und die Lesbarkeit des Codes zu verbessern. Mehr dazu ici .
Zum Schreiben Ihrer byteArray
zu einer Datei, die Sie tun würden:
try (FileOutputStream fos = new FileOutputStream("fullPathToFile")) {
fos.write(byteArray);
} catch (IOException ioe) {
ioe.printStackTrace();
}
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.