【发布时间】:2012-05-28 14:40:02
【问题描述】:
我想将 NSData 转换为字节数组,下面给出的是我使用过的代码
NSData *imageData = UIImagePNGRepresentation(recipeImage.image); NSUInteger len = [图像数据长度]; 字节 *byteData = (Byte*)malloc(len); memcpy(byteData, [imageData 字节], len); NSLog(@"%8s",byteData);但是当我将 byteData 发布到下面给出的 web 服务时,它给了我一个错误
“服务器无法处理请求。--->参数无效。”
当我打印 byteData 时,这就是我在控制台中得到的内容
âPNG我尝试在文档中搜索 NSData 并找到 getBytes 方法,但这也没有任何用处,我仍然遇到同样的错误。
能否请您从上面的代码中告诉我我错在哪里或者我在将数据转换为字节数组时犯了什么错误
编辑:我尝试过使用
[imageData getBytes:&byteData 长度:length];它给了我一个糟糕的访问错误
【问题讨论】:
-
你想做什么?从图片中获取像素数据?
-
删除
&,错误的访问错误就会消失。反正我看不出这段代码的意义——为什么不把数据留在NSData对象中,避免额外内存和复制数据的开销? -
你也可以使用
Byte *byteData = imageData.bytes;简单地引用字节数组
标签: iphone objective-c ios xcode nsdata