gpt4 book ai didi

java - 从字节到大无符号整数和字符串的转换

转载 作者:行者123 更新时间:2023-11-30 03:17:05 25 4
gpt4 key购买 nike

我有一个 20 字节的 byte[]。
我需要读取前 4 个字节并将它们转换为单个无符号整数,然后转换为字符串。
字节生成一个大整数,所以当我转换为整数然后在字符串中时,我得到一个负数。
示例:0x53、0x2D、0x78、0xAA。我将它们转换为:

        hash = bHash[0]|bHash[1]<<8|bHash[2]<<16|bHash[3]<<24;
keyid = String.valueOf(hash);
keyid = Integer.toString(hash);

我在这两种情况下都有:“-1434964653”,但我需要生成“2860002643”。

最佳答案

由于Java中没有unsigned int,所以使用long类型:

 long hash = (bHash[0]|bHash[1]<<8|bHash[2]<<16|bHash[3]<<24)&0xFFFFFFFFl;
String keyid = String.valueOf(hash);
keyid = Long.toString(hash);

关于java - 从字节到大无符号整数和字符串的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19874527/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com