Sauvegarde et récupération des images vers et à partir de SQLite dans iOS
Je suis en train d'enregistrer des images dans Sqlite, puis de charger une image dans une UIImageView. Mais ce n'est pas du travail. Je ne sais pas ce que commence à faire mal. Voici le code que j'utilise. Quelqu'un peut-il m'aider à résoudre ce problème.
- (void)saveImage {
sqlite3_stmt *compiledStmt;
if(sqlite3_open([dbPath UTF8String], &db)==SQLITE_OK){
const char *insertSQL="insert into Image(Image)values(?)";
if(sqlite3_prepare_v2(db,insertSQL, -1, &compiledStmt, NULL) == SQLITE_OK){
UIImage *image = [UIImage imageNamed:@"farmhouse.png"];
NSData *imageData=UIImagePNGRepresentation(image);
sqlite3_bind_blob(compiledStmt, 1, [imageData bytes], [imageData length], NULL);
sqlite3_step(compiledStmt);
char *errMsg;
sqlite3_exec(db, insertSQL, NULL,compiledStmt,&errMsg);
}
}
}
- (void)showImage {
sqlite3_stmt *compiledStmt;
if(sqlite3_open([dbPath UTF8String], &db)==SQLITE_OK){
const char *insertSQL = "Select Image from Image Where Sl.No = ?";
sqlite3_prepare_v2(db,insertSQL, -1, &compiledStmt, NULL);
if(sqlite3_prepare_v2(db,insertSQL, -1, &compiledStmt, NULL) == SQLITE_OK){
sqlite3_bind_int(compiledStmt, 1, 1);
if(SQLITE_DONE != sqlite3_step(compiledStmt)) {
NSData *data = [[NSData alloc] initWithBytes:sqlite3_column_blob(compiledStmt, 1) length:sqlite3_column_bytes(compiledStmt, 1)];
if(data == nil)
NSLog(@"No image found.");
else
imgView.image = [UIImage imageWithData:data];
}
}
}
}
Quelqu'un peut le point sur la question avec code ci-dessus.
Merci d'avance
Pourquoi ne pas utiliser le système de fichiers à la place?
hors-sujet: pour les projets à venir, vous devriez utiliser FMDatabse: github.com/ccgus/fmdb
hors-sujet: pour les projets à venir, vous devriez utiliser FMDatabse: github.com/ccgus/fmdb
OriginalL'auteur sree_iphonedev | 2012-06-05
Vous devez vous connecter pour publier un commentaire.
Bonjour Hector, j'ai remplacé le saveImage méthode avec votre code. Mais j'obtiens l'erreur suivante : "Erreur: l'Image.L'Image ne peut pas être NULL". Mais j'ai essayé d'attribuer le UIImage objet de la ferme.png pour une UIImageView. Il a travaillé. Alors pourquoi erreur NULLE.
Comment puis-je faire pour PDF...? J'ai mon PDF en local..
cela m'a aidé à économiser de l'image en swift
OriginalL'auteur Hector