Einfaches Schreiben von InputStream-Inhalten in OutputStream in Java
Das Kopieren des Inhalts eines InputStream in einen OutputStream in Java ist eine häufige Aufgabe. Obwohl es möglich ist, Byte-Puffercode zu schreiben, gibt es möglicherweise eine einfachere Lösung.
Stellen Sie sich ein Szenario vor, in dem Sie einen InputStream-Eingang und einen OutputStream-Ausgang haben. Der folgende Code veranschaulicht den herkömmlichen Ansatz:
byte[] buffer = new byte[1024]; int len = in.read(buffer); while (len != -1) { out.write(buffer, 0, len); len = in.read(buffer); }
Einführung in Apache IOUtils
Wie von WMR vorgeschlagen, stellt die Klasse org.apache.commons.io.IOUtils von Apache eine Methode namens copy(InputStream, OutputStream) bereit ), was diese Aufgabe vereinfacht.
Mit IOUtils wird der Code prägnanter und unkompliziert:
IOUtils.copy(in, out); in.close(); out.close();
Obwohl die Verwendung von IOUtils empfohlen wird, können Sie, wenn Sie bestimmte Gründe haben, dies zu vermeiden, Ihren eigenen benutzerdefinierten Byte-Puffercode implementieren, wie im ursprünglichen Codeausschnitt gezeigt.
Das obige ist der detaillierte Inhalt vonWie kann ich in Java einfach einen InputStream in einen OutputStream kopieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!