gpt4 book ai didi

java - 如何忽略ffff并保证单字节填充0?

转载 作者:行者123 更新时间:2023-12-01 09:27:12 25 4
gpt4 key购买 nike

我读过以下内容,我知道我的校验码肯定只是单字节值,但是当我转换时,我倾向于得到 ffffff9e 等。但我只需要 9e。如何将其转换为只有纯 2 位数字,如果是个位数,则填充 0?

                byte checkCode = r.readByte();             // check code
System.out.println("checkCode is 0x: " + Integer.toHexString(checkCode));

最佳答案

事实是,如果将 0x9e 转换为 int 数字,它将是 -98,ffffff 表示减号 -。有 6 个 f,因为您使用的是 Integer,尝试 Long,您会得到更多 f

如果你再得到一个测试数据,例如1e(int值是30),那么结果将如你所料。

如果你只是想删除f,最简单的方法:

System.out.println("checkCode is 0x: " + Integer.toHexString(checkCode).substring(6, 8));

因为您使用的是Integer,所以您始终需要 6 到 8 之间的子字符串。

关于java - 如何忽略ffff并保证单字节填充0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39742885/

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