gpt4 book ai didi

java - 给定一个 obj-c 无符号字节数组,如何在 Java 中获得等效的字节值?

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

我在 iOS 应用程序中有一个字节数组,

const uint8 unsignedByteArray[] = {189U, 139U, 64U, 0U};

我需要从运行 Java 的 Android 设备发送这些相同的精确值。

有没有一种方法可以可靠地将无符号值转换为 Java 可以使用和发送的值,相当于 iOS 上的字节值?

最佳答案

在 Objective-c 中,从数据创建一个十六进制字符串...

const uint8_t bytes[] = {189U, 139U, 64U, 0U};
NSMutableString *result = [NSMutableString string];

for (int i = 0; i < 4; ++i) {
[result appendFormat:@"%02x", (uint8_t)bytes[i]];
}
NSLog(@"%@",result);

这将导致......

bd8b4000

然后apply an idea like this在java中(逐字复制这里的代码)...

public static byte[] hexStringToByteArray(String s) {
int len = s.length();
byte[] data = new byte[len / 2];
for (int i = 0; i < len; i += 2) {
data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
+ Character.digit(s.charAt(i+1), 16));
}
return data;
}

关于java - 给定一个 obj-c 无符号字节数组,如何在 Java 中获得等效的字节值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40948805/

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