我需要将我的uint8_t缓冲区中的单个元素的内容转换为NSString,以便我可以将其显示到我的iPhone应用程序上的标签。我从TCP连接中读取缓冲区的内容。我没有得到正确的编码,因此元素的值可以正确显示。例如,如果缓冲区[4]的内容为0xFD或253,我该如何最好地将其转移到标签? (标签是data1)还是有更简单的方法?谢谢。uint8_t转换为NSString
uint8_t buffer[64];
uint8_t tinybuffer[1];
int len;
// Read in contents from TCP connection, log dump, and display to label.
len = [inputStream read:buffer maxLength:sizeof(buffer)];
if (len > 0) {
// Log dump
for(int i = 0; i < len; i++) {
NSLog(@"Returning byte %d : %x", i, buffer[i]);
}
NSLog(@"Finished Reading");
// Get data to the screen.
tinybuffer[0] = buffer[4];
NSString *str1 = [[NSString alloc] initWithBytes:tinybuffer length:1 encoding:NSUTF8StringEncoding];
_data1.text = str1;
0xFD字节应该显示什么字符? –
我正在使用缓冲区进行Modbus传输。我需要拔出数组的元素并显示它们。 0xFD需要显示为253,因为它是数字转换值。 – OilLifter