Erreur iOS UIImageJPEGRepresentation: Pas un fichier JPEG: commence par 0xff 0xd9

Je suis en train d'écrire une .fichier jpg pour mon application répertoire Documents comme ceci:

NSData *img = UIImageJPEGRepresentation(myUIImage, 1.0);
BOOL retValue = [img writeToFile:myFilePath atomically:YES];

Plus tard, je charge l'image en arrière dans une UIImage à l'aide de:

UIImage *myImage = [UIImage imageWithContentsOfFile:path];

Je sais que ça fonctionne parce que je peux dessiner l'image dans une cellule de tableau et c'est très bien. Maintenant, si j'essaie d'utiliser UIImageJPEGRepresentation(myImage, 1.0), le débogueur affiche ces lignes:

<Error>: Not a JPEG file: starts with 0xff 0xd9
<Error>: Application transferred too few scanlines

Et la fonction retourne nil. Quelqu'un a une idée de pourquoi cela arriverait? Je n'ai rien fait pour manipuler les UIImage de données après qu'il a été chargé. J'ai juste fourni la UIImage à une image vue dans une cellule. J'ai mis l'image à afficher les propriétés telles que toutes les images dans les cellules de la ligne et sont de la même taille, mais je ne pense pas que cela devrait rien avoir à faire avec le fait d'être en mesure de convertir les UIImage à NSData.

source d'informationauteur viperacr99