SQLiteで画像を保存したりフェッチしたり、画像を保存する方法を教えてください。例を用いて説明すると、より役に立ちます。スウィフトでSqliteで画像を保存および取得する
0
A
答えて
2
画像自体は、データベースの列に格納することはできませんが、あなたは最初の文字列に変換し、それを保存することができます。この文字列はbase64文字列と呼ばれます。私が知る限り、どんなイメージでもそれを逆に変換することができます。
let image : UIImage = UIImage(named:"imageNameHere")!
let imageData:NSData = UIImagePNGRepresentation(image)!
let strBase64 = imageData.base64EncodedString(options: .lineLength64Characters)
今すぐあなたのUIImageオブジェクトを文字列に変換されます。ベース64にエンコードするために
! strBase64をSQLite DBに保存します。この文字列は非常に長いため、列タイプとしてtext
を使用することを忘れないでください。
はUIImageに戻ってデコードするには:
let dataDecoded:NSData = NSData(base64EncodedString: strBase64, options: NSDataBase64DecodingOptions(rawValue: 0))!
let decodedimage:UIImage = UIImage(data: dataDecoded)!
+0
あなたの明確な説明をありがとうございます。 –
0
sqliteに画像を保存することはできません。
あなたがする必要がある事は、ドキュメントディレクトリに画像を保存
- です。
- イメージファイルのパスまたはイメージ名をsqliteに保存します。
- イメージパスまたは名前をsqliteから取得し、ドキュメントディレクトリからそのパスにアクセスします。
テイク参考:Iphone : How to Display Document Directory images in Image View?
あなたはsqliteの中でイメージ名を追加して、ドキュメントディレクトリに画像を保存する必要があります。 – KKRocks
あなたのイメージはローカルまたはサーバーのURLです。同時にオフラインでイメージを使用したい場合は –
スピーディーな例で詳しく説明できます –