Netty:字符串编码器和解码器将十六进制值转换为ASCII值。将其发送到设备时
内蒂:我有来自通信设备的十六进制值,但当我向那个设备发送一些十六进制值时,它被转换成ASCII值。我想我现在使用的编码器和解码器是错误的 有人能告诉我如何在不转换的情况下发送这些十六进制字节吗 进入任何其他fromat 这是实现十六进制值数据编码器和解码器的正确方法 我在netty中使用的代码是-Netty:字符串编码器和解码器将十六进制值转换为ASCII值。将其发送到设备时,netty,decoder,Netty,Decoder,内蒂:我有来自通信设备的十六进制值,但当我向那个设备发送一些十六进制值时,它被转换成ASCII值。我想我现在使用的编码器和解码器是错误的 有人能告诉我如何在不转换的情况下发送这些十六进制字节吗 进入任何其他fromat 这是实现十六进制值数据编码器和解码器的正确方法 我在netty中使用的代码是- private class TCPPipelineFactory implements ChannelPipelineFactory { @SuppressWarnings("depr
private class TCPPipelineFactory implements ChannelPipelineFactory {
@SuppressWarnings("deprecation")
@Override
public ChannelPipeline getPipeline() throws Exception {
// Create a default pipeline implementation.
ChannelPipeline pipeline = pipeline();
//pipeline.addLast("readtimeout", new ReadTimeoutHandler(hashedWheelTimer, idleTimeSecsForIncompleteRequests));
// Add the text line codec combination first,
pipeline.addLast("framer", new DelimiterBasedFrameDecoder(8192,
new ChannelBuffer[] {
ChannelBuffers.wrappedBuffer("$<end>".getBytes()) }));
// ChannelBuffers.wrappedBuffer(new byte[] { '#' }) }));
///pipeline.addLast("decoder", new StringDecoder()); to check V123 testing
//pipeline.addLast("encoder", new StringEncoder());
pipeline.addLast("decoder", new ObjectDecoder());
pipeline.addLast("encoder", new ObjectEncoder());
// and then business logic.
pipeline.addLast("handler", new TCPService(TCPFrontChannel.this, commLayerId));
return pipeline;
}
}
}
私有类TCPPipelineFactory实现ChannelPipelineFactory{
@抑制警告(“弃用”)
@凌驾
公共ChannelPipeline getPipeline()引发异常{
//创建默认管道实现。
ChannelPipeline=管道();
//addLast(“readtimeout”,新的ReadTimeoutHandler(hashedWheelTimer,IdleTimesCsforIncompletteRequests));
//首先添加文本行编解码器组合,
pipeline.addLast(“framer”,新定界符RBASEDFrameDecoder(8192,
新通道缓冲区[]{
ChannelBuffers.wrappedBuffer(“$”.getBytes())});
//wrappedBuffer(新字节[]{'#'}});
///pipeline.addLast(“decoder”,new StringDecoder());用于检查V123测试
//addLast(“编码器”,新的StringEncoder());
addLast(“解码器”,newObjectDecoder());
addLast(“编码器”,newObjectEncoder());
//然后是业务逻辑。
pipeline.addLast(“handler”,新的TCPService(TCPFrontChannel.this,commLayerId));
回流管道;
}
}
}