12345678910111213141516171819202122232425262728293031323334 |
- package com.js.kbt.socket;
- import java.util.List;
- import org.apache.log4j.Logger;
- import io.netty.buffer.ByteBuf;
- import io.netty.channel.ChannelHandlerContext;
- import io.netty.handler.codec.string.StringDecoder;
- public class CustomDecoder extends StringDecoder {
- private static final Logger logger = Logger.getLogger(CustomDecoder.class);
- @Override
- protected void decode(ChannelHandlerContext ctx, ByteBuf msg, List<Object> out) throws Exception {
- String HEXES = "0123456789ABCDEF";
- byte[] req = new byte[msg.readableBytes()];
- msg.readBytes(req);
- final StringBuilder hex = new StringBuilder(2 * req.length);
- logger.info("接收到Data");
- for (int i = 0; i < req.length; i++) {
- byte b = req[i];
- hex.append(HEXES.charAt((b & 0xF0) >> 4))
- .append(HEXES.charAt((b & 0x0F)));
- }
- logger.info("decode="+hex.toString());
-
- out.add(hex.toString());
- }
-
-
- }
|