added reverse byte order function
This commit is contained in:
parent
542b242c41
commit
0495d3289b
2 changed files with 23 additions and 0 deletions
|
|
@ -95,6 +95,21 @@ public class ByteUtil {
|
||||||
return dest;
|
return dest;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a new byte array with reversed byte ordering
|
||||||
|
* (LittleEndian -> BigEndian, BigEndian -> LittleEndian)
|
||||||
|
*
|
||||||
|
* @param data is the byte array that will be reversed.
|
||||||
|
* @return a new byte array that will have the same data but in reverse byte order
|
||||||
|
*/
|
||||||
|
public static byte[] getReverseByteOrder(byte[] data){
|
||||||
|
byte[] dest = new byte[data.length];
|
||||||
|
if (data.length > 0)
|
||||||
|
for (int i=0; i<data.length; ++i)
|
||||||
|
dest[dest.length-1-i] = data[i];
|
||||||
|
return dest;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns a byte bitmask
|
* Returns a byte bitmask
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -58,4 +58,12 @@ public class ByteUtilTest {
|
||||||
assertArrayEquals(new byte[]{0x00,0x01}, ByteUtil.getBits(new byte[]{0x00,0x01}, 9));
|
assertArrayEquals(new byte[]{0x00,0x01}, ByteUtil.getBits(new byte[]{0x00,0x01}, 9));
|
||||||
assertArrayEquals(new byte[]{0x00,0x01}, ByteUtil.getBits(new byte[]{0x00,0x11}, 9));
|
assertArrayEquals(new byte[]{0x00,0x01}, ByteUtil.getBits(new byte[]{0x00,0x11}, 9));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getReverseByteOrder(){
|
||||||
|
assertArrayEquals(new byte[]{}, ByteUtil.getReverseByteOrder(new byte[]{}));
|
||||||
|
assertArrayEquals(new byte[]{0x11}, ByteUtil.getReverseByteOrder(new byte[]{0x11}));
|
||||||
|
assertArrayEquals(new byte[]{0x22,0x11}, ByteUtil.getReverseByteOrder(new byte[]{0x11,0x22}));
|
||||||
|
assertArrayEquals(new byte[]{0x44,0x33,0x22,0x11}, ByteUtil.getReverseByteOrder(new byte[]{0x11,0x22,0x33,0x44}));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue