/**
* 对数据操作操作
*/
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;
}
}
网友评论