1

NSData をバイト配列に変換したいのですが、以下は私が使用したコードです

    NSData *imageData = UIImagePNGRepresentation(recipeImage.image);
    NSUInteger len = [画像データの長さ];
    Byte *byteData = (Byte*)malloc(len);
    memcpy(byteData, [imageData バイト], len);
    NSLog(@"%8s",byteData);

しかし、以下に示すWebサービスにbyteDataを投稿すると、エラーが発生します

「サーバーはリクエストを処理できませんでした。 ---> パラメータが無効です。」

そして、byteDataを出力すると、これがコンソールに表示されます

âPNG

ドキュメントで NSData を検索してみて getBytes メソッドを見つけましたが、それも役に立たず、同じエラーが発生していました。

上記のコードから、どこが間違っているか、またはデータをバイト配列に変換する際にどのような間違いを犯しているのかを教えてください。

編集:私は

[imageData getBytes:&byteData 長さ:長さ];

悪いアクセスエラーが表示されます

4

2 に答える 2

3

これを試して

NSData *imageData = UIImagePNGRepresentation(recipeImage.image);  
NSUInteger len = [imageData length];
Byte *byteData= (Byte*)malloc(len);
[imageData  getBytes:byteData length:len];
于 2012-05-22T06:04:58.863 に答える