Косуля,
Я следовал приведенному ниже фрагменту кода в большинстве проектов:
Чтобы сохранить изображение в папке, используйте следующую функцию:
func addImageInFolder(image : UIImage,filename:String){
let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0]
let folderURL = documentsURL.appendingPathComponent("upload")
if !FileManager.default.fileExists(atPath: folderURL.path) {
do {
try FileManager.default.createDirectory(atPath: folderURL.path, withIntermediateDirectories: true, attributes: nil)
}
catch {}
}
let fileURL = folderURL.appendingPathComponent(filename)
let data = UIImageJPEGRepresentation(image, 0.9)
do {
try data!.write(to: fileURL)
}
catch {}
}
Используйте функцию ниже, чтобы удалить изображение из сохраненной папки:
let fileURL = documentsURL.appendingPathComponent("upload/\(filename ?? "")")
if FileManager.default.fileExists(atPath: fileURL.absoluteString){
do{
try FileManager.default.removeItem(at: fileURL)
}catch{
print("\(sigStr ?? "") delete file delete error")
}
}
Чтобы получить изображение из папки:
let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0]
//TODO: -Get dateTime For get image URL-
let fileURL = documentsURL.appendingPathComponent("upload/\(fileName)")
if FileManager.default.fileExists(atPath: fileURL.path) {
//Get Image And upload in server
print("fileURL.path \(fileURL.path)")
do{
let data = try Data.init(contentsOf: fileURL)
imageView.image = UIImage(data: data)
}catch{
}
}