Я пытаюсь получить массив байтов, содержащий байты изображения, например:
NSString* filePath = [[NSBundle mainBundle] pathForResource:@"image" ofType:@"png"];
NSData *data = [NSData dataWithContentsOfFile:filePath];
unsigned char *bytesArray = data.bytes;
NSUInteger lengthOfBytesArray = data.length;
Затем я пытаюсь скопировать эти значения в массив.
if (data.length>0)
{
NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:data.length];
for (int i = 0; i<data.length; i++) {
unsigned char byteFromArray = bytesArray[i];
[array addObject:[NSValue valueWithBytes:&byteFromArray objCType:@encode(unsigned char)]];
}
}
Наконец, в отладке я получил массив пустых объектов. У них есть адрес памяти, но нет значения (тип NSConcreateValue). Также в области отладки я проверил byteFromArray
, и это `(беззнаковый символ) 'P'. Я выбрал неправильный способ получения массива байтов из изображения или мой код неверен?