美文网首页
对字节数组操作

对字节数组操作

作者: ivms8200 | 来源:发表于2020-05-29 11:22 被阅读0次
    /**
     * 对数据操作操作
     */
    public class DataUtil {
    
        /**
         * 除去0
         */
        public static final int EXCEPT_ZERO = 1;
    
        /**
         * 获得所有
         */
        public static final int GET_ALL = 0;
    
        public static byte[] getBytes(byte[] bytes, int start, int size) {
            return getBytes(bytes, start, size, GET_ALL);
        }
    
        public static byte[] getBytes(byte[] bytes, int start, int size, int type) {
            byte[] resultBytes = new byte[size];
            int current = 0;
            switch (type) {
                case EXCEPT_ZERO:
                    int len = 0;
                    for (int i = 0 + start; i < size + start; i++) {
                        if (bytes[i] != 0x00) {
                            len++;
                        }
                    }
                    resultBytes = new byte[len];
                    for (int i = 0; i < size; i++) {
                        byte b = bytes[start];
                        if (b != 0x00) {
                            resultBytes[current] = b;
                            current++;
                        }
                        start++;
                    }
                    return resultBytes;
                case GET_ALL:
                    resultBytes = new byte[size];
                    for (int i = 0; i < size; i++) {
                        resultBytes[i] = bytes[start];
                        start++;
                    }
                    return resultBytes;
            }
            return resultBytes;
        }
    
        /**
         * 切换大小端续
         */
        public static byte[] changeBytes(byte[] a) {
            byte[] b = new byte[a.length];
            for (int i = 0; i < b.length; i++) {
                b[i] = a[b.length - i - 1];
            }
            return b;
        }
    }
    

    相关文章

      网友评论

          本文标题:对字节数组操作

          本文链接:https://www.haomeiwen.com/subject/obrxzhtx.html