2017-11-17 8 views
1

イメージパスをコアデータに保存しようとしていますが、後でユーレカフォームを使用して作成した行にイメージを表示できます。以下のコードはURLを保存しますが、ファイル名を取得できません。ここに現在保存されているものがあります。イメージデータパスをコアデータに保存し、ユーレカ行のパスを使用してイメージを表示します。

ファイル:///ユーザ/がmyName /ライブラリ/開発/ CoreSimulator /デバイス/ 21A03F39-026C-417F-8E51-16C5E4BE2FC8 /データ/コンテナ/データ/アプリケーション/ 4A7CAE46-5004-4A2E-93A6-A3581F853576 /ドキュメント/

@IBAction func btnSave(_ sender: UIButton) { 

    UIImageWriteToSavedPhotosAlbum(imageView.image!, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil) 

    let documentDirectories = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first 

    let url = URL(fileURLWithPath: documentDirectories!) 

    print ("STARTS HERE \(url) ENDS") 

答えて

0

画像を画像名で画像ディレクトリに保存する場合は、このコードをお試しください。保存すると、将来の使用に備えてファイルURLが取得されます。

let documentsDirectoryURL = try! 
NSFileManager().URLForDirectory(.DocumentDirectory, inDomain: .UserDomainMask, 
    appropriateForURL: nil, create: true) 
// create a name for your image 
let fileURL = documentsDirectoryURL.URLByAppendingPathComponent("Image1.jpg") 

if !NSFileManager.defaultManager().fileExistsAtPath(fileURL.path!) { 
    if UIImageJPEGRepresentation(image, 1.0)!.writeToFile(fileURL.path!, atomically: true) { 
     print("file saved") 
    } else { 
     print("error saving file") 
    } 
} else { 
    print("file already exists") 
} 
print ("STARTS HERE \(fileURL) ENDS") 
+0

ありがとうございます。私はスイフト4を使用しており、更新しなければならないものがたくさんありました。私が理解できない1つのアップデートがあります。私はエラーが発生しています:タイプ 'URL'の値にメンバー 'URLByAppendingPathComponent'がありません –

+0

これをswift 4に使用できます "let fileURL = documentsDirectoryURL..appendingPathComponent(" Image1.jpg ")" –

関連する問題