| | |
| | | |
| | | @SuppressWarnings({ "unchecked", "rawtypes" }) |
| | | public static <T extends Struct> T decode(Class<? extends Struct> cls,byte[] bytes) throws Exception{ |
| | | Struct instance = cls.newInstance(); |
| | | Struct instance = cls.getDeclaredConstructor().newInstance(); |
| | | return instance.decode(bytes); |
| | | } |
| | | |
| | |
| | | instance.unusedBytes = unusedBytes; |
| | | return (T) instance; |
| | | } |
| | | |
| | | // 字节数组 ===>> 转为十六进制字符串 |
| | | public static String toHex(byte[] bytes) { |
| | | StringBuilder buf = new StringBuilder(bytes.length * 2); |
| | | for(byte b : bytes) { // 使用String的format方法进行转换 |
| | |
| | | } |
| | | return bbt; |
| | | } |
| | | |
| | | |
| | | public static class TestMessage { |
| | | public @size(1) byte begin = 0x7e;//起始符 |