問題: - 我正在使用FMDatabase類來存儲數據庫中的數據和從數據庫訪問數據。在一張表中,我使用Blob數據類型來存儲Image。 方式:Feching圖像形式sqlite(使用FMDatabase類)
UIImage *img = [UIImage imageNamed:@"image.png"];
NSData *data = UIImagePNGRepresentation(img);
[fmdbase executeUpdate:[NSString stringWithFormat: @"Insert into tblComm('%d,%@','%@')",cID,cmmentsString,data...]];
並獲得這樣的數據,
commentsText.text = [records stringForColumn:@"comments"];
// NSData *data = [records stringForColumn:@"photo"];
NSData *data = [records dataForColumn:@"photo"];
UIImage *img = [UIImage imageWithData:data];
,但數據是不準確的格式和不顯示圖像,請幫幫忙?
解決方案:像這樣:Create table tblComm(commID integer primary key autoincrement,comm text,photo text);和使用BASE64Encoding使用FMDatabase類插入值,請從此鏈接下載代碼[鏈接](http://imthi.com/blog/programming/iphone-sdk-base64-encode-decode.php)並編寫像這樣的代碼://將nsdata轉換爲nsstring:UIImage * img = [UIImage imageNamed:@「image.png」]; data1 = UIImagePNGRepresentation(img); [Base64初始化]; NSString * enString = [Base64 encode:data1]; – 2012-02-29 07:43:24