objective-c将jpg文件转换为字节数组

时间:2012-01-08 10:25:32

标签: objective-c

我正在尝试读取jpg文件并转换为字节数组 这是以下代码,此代码适用于文本文件但图像文件上的文件

//开始代码

NSString *stringFromFileAtPath = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];

if(stringFromFileAtPath == nil){
    NSLog(@"Error reading file at path %@\n%@", path, [error localizedFailureReason]);
    }
NSLog(@"Contents:%@", stringFromFileAtPath);

NSData *bytes = [stringFromFileAtPath dataUsingEncoding:NSUTF8StringEncoding];
NSLog(@"Bytes:%@", bytes);

//代码结尾

这是我收到的错误消息 错误消息:文本编码Unicode(UTF-8)不适用。

让我知道我正在做的错误或将jpg文件转换为字节数组的代码

1 个答案:

答案 0 :(得分:4)

为什么不使用NSData的{​​{1}}方法?见这里:

即:

initWithContentsOfFile:

你不能做你所做的事情的原因是你试图读取图像文件,好像它是用UTF8编码的,很可能那里的字节在UTF8中会出错 - 它不是字符串。