netty:获取OutputStream进行写入

时间:2012-10-26 07:33:42

标签: sockets netty outputstream

我从netty开始,需要一些帮助。

我不明白,我怎样才能获得要写入的频道的OutputStream。 我已经有一个UpstreamHandler(解码器),它读取一个请求并对其进行解码 - 现在我想回写(连接客户端的答案)。 我可以写一个字符串(来自netty网站的例子),但我想直接写一些OutputStream(我的业务逻辑方法有一个OutpuStream作为参数,写入数据)。

我如何用netty做到这一点?

1 个答案:

答案 0 :(得分:2)

在Netty中,您使用“Channel.write(..)”将数据写回客户端。如果你真的需要写一个OutputStream你可以用:

ChannelBufferOutputStream out = new ChannelBufferOutputStream(ChannelBuffers.dynamicBuffer());
yourObject.handle(out);
Channel.write(out.buffer());

另一种方法是编写一个包装Channel的OutputStream。