Jak umieścić zawartość bufora bajtowego w Strumieniu wyjściowym?

Muszę umieścić zawartość {[0] } w java.io.OutputStream. (chciałbym zamiast tego mieć Channel, ale nie mam) jaki jest najlepszy sposób na to?

Nie mogę użyć metody ByteBuffer array(), ponieważ może to być bufor tylko do odczytu.

Mogę również przeplatać zapisy do strumienia wyjściowego pomiędzy używaniem tego bufora bajtowego a posiadaniem regularnej tablicy byte[], którą mogę bezpośrednio użyć OutputStream.write().

Author: Jonas, 2009-02-24

1 answers

Spójrz na kanały.newChannel (OutputStream) . To da ci kanał, biorąc pod uwagę strumień wyjściowy. Za pomocą adaptera Writablebytechannel możesz dostarczyć Bufor bajtowy, który zapisze go do strumienia wyjściowego.

public void writeBuffer(ByteBuffer buffer, OutputStream stream) {
   WritableByteChannel channel = Channels.newChannel(stream);

   channel.write(buffer);
}
To powinno zadziałać!
 48
Author: ng.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-27 18:58:22