Heim > Java > javaLernprogramm > Wie kann ich InputStream-Inhalte in Java effizient an OutputStream übertragen?

Wie kann ich InputStream-Inhalte in Java effizient an OutputStream übertragen?

Mary-Kate Olsen
Freigeben: 2024-12-21 14:56:16
Original
646 Leute haben es durchsucht

How Can I Efficiently Transfer InputStream Content to OutputStream in Java?

Mühelose Methode zum Übertragen von InputStream-Inhalten an OutputStream in Java

In Java benötigen Sie gelegentlich eine nahtlose Möglichkeit, die Inhalte eines InputStreams in einen OutputStream zu schreiben. Überraschenderweise kann es schwierig sein, eine einfache Lösung für diese Aufgabe zu finden. Während die manuelle Implementierung von Bytepuffercode verwaltbar ist, gibt es möglicherweise einen eleganteren Ansatz, der Ihrer Aufmerksamkeit einfach entgeht.

Betrachten wir ein Szenario mit einem InputStream namens „in“ und einem OutputStream namens „out“. Um den Inhalt effektiv zu übertragen, können Sie instinktiv Code wie den folgenden schreiben:

byte[] buffer = new byte[1024];
int len = in.read(buffer);
while (len != -1) {
    out.write(buffer, 0, len);
    len = in.read(buffer);
}
Nach dem Login kopieren

Es gibt jedoch eine prägnantere Möglichkeit, diese Funktionalität zu erreichen, wie von WMR vorgeschlagen. Durch die Nutzung der org.apache.commons.io.IOUtils von Apache können Sie die Methode „copy(InputStream, OutputStream)“ verwenden, die die Übertragungsaufgabe mühelos für Sie erledigt.

Mit dieser Methode wird Ihr Code wird unglaublich prägnant:

InputStream in;
OutputStream out;
IOUtils.copy(in, out);
in.close();
out.close();
Nach dem Login kopieren

Keine aufwändige Pufferverwaltung mehr, nur eine einzige Zeile, die sich um alles kümmert. Und um Ihr Anliegen auszuräumen: Es scheint keinen zwingenden Grund zu geben, die Verwendung von IOUtils für eine so einfache Aufgabe zu vermeiden. Seine Einbindung in Ihre Codebasis kann Ihre Datenübertragungsvorgänge erheblich vereinfachen.

Das obige ist der detaillierte Inhalt vonWie kann ich InputStream-Inhalte in Java effizient an OutputStream übertragen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage