java十六进制大小端转换,java
将文本字段的值从十六进制转换为小端的公式是什么?
输入示例:5A109061
输出示例:1636831322
解决方法:
>从EditText作为字符串获取值.
>使用Integer.parseInt(…)和基数16将字符串值解析为十六进制.
>使用ByteBuffer(更简单)或使用移位(更快)来翻转int的字节顺序.
例如:
String hex = "5A109061"; // mEditText.getText().toString()
// Parse hex to int
int value = Integer.parseInt(hex, 16);
// Flip byte order using ByteBuffer
ByteBuffer buffer = ByteBuffer.allocate(4);
buffer.order(ByteOrder.BIG_ENDIAN);
buffer.asIntBuffer().put(value);
buffer.order(ByteOrder.LITTLE_ENDIAN);
int flipped = buffer.asIntBuffer().get();
System.out.println("hex: 0x" + hex);
System.out.println("flipped: " + flipped);
输出:
hex: 0x5A109061
flipped: 1636831322
标签:java,android
来源: .html
发布评论