在 Objective C 中将 Hex NSData 转换为 int
Convert Hex NSData to int in Objective C
我们的自定义智能路由器正在给我 NSData
响应
<800c01ff 0001ffff ffff29ff>
这里,800c
是我的deviceId。如何将其转换为 int
?
deviceId =32780;
当我向路由器发送命令时,我将其构建为
Byte mqttData[12];
mqttData[0] =[[NSNumber numberWithUnsignedChar:(deviceID >> 8) & 0xFF] intValue];
//mqttData[0]=128 or 80 in Hex
mqttData[1] =[[NSNumber numberWithUnsignedChar:deviceID & 0xFF] intValue];
//mqttData[1]=12 or 'C' in Hex
return [NSData dataWithBytes:mqttData length:sizeof(mqttData)];
int deviceId = CFSwapInt16BigToHost(*(int*)([deviceIDData bytes]))
答案取自 Larme 的评论。
我们的自定义智能路由器正在给我 NSData
响应
<800c01ff 0001ffff ffff29ff>
这里,800c
是我的deviceId。如何将其转换为 int
?
deviceId =32780;
当我向路由器发送命令时,我将其构建为
Byte mqttData[12];
mqttData[0] =[[NSNumber numberWithUnsignedChar:(deviceID >> 8) & 0xFF] intValue];
//mqttData[0]=128 or 80 in Hex
mqttData[1] =[[NSNumber numberWithUnsignedChar:deviceID & 0xFF] intValue];
//mqttData[1]=12 or 'C' in Hex
return [NSData dataWithBytes:mqttData length:sizeof(mqttData)];
int deviceId = CFSwapInt16BigToHost(*(int*)([deviceIDData bytes]))
答案取自 Larme 的评论。