Сохранение файла базы данных .sqlite из URL-адреса в пакет приложений для использования в автономном режиме - PullRequest
0 голосов
/ 05 мая 2020

Здравствуйте, я использую этот код для сохранения / загрузки изображений из inte rnet в файл. Как я могу изменить его, чтобы сохранить базу данных типа .sqlite в файл и получить к ней доступ? Я пробовал искать файлы разных типов, но не могу найти, как настроить здесь расширения UIImage и jpeg для того, что мне нужно.

func saveImage(imageName: String, image: UIImage)
{
 guard let documentsDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first else { return }

    let fileName = imageName
    let fileURL = documentsDirectory.appendingPathComponent(fileName)
    guard let data = image.jpegData(compressionQuality: 1) else { return }

    //Checks if file exists, removes it if so.
    if FileManager.default.fileExists(atPath: fileURL.path) {
        do {
            try FileManager.default.removeItem(atPath: fileURL.path)
          //  print("Removed old image")
        } catch let removeError {
            print("couldn't remove file at path", removeError)
        }
    }
    do {
        try data.write(to: fileURL)
    } catch let error {
        print("error saving file with error", error)
    }
}

//Image Loading
func loadImageFromDiskWith(fileName: String) -> UIImage?
{

  let documentDirectory = FileManager.SearchPathDirectory.documentDirectory
  let userDomainMask = FileManager.SearchPathDomainMask.userDomainMask
  let paths = NSSearchPathForDirectoriesInDomains(documentDirectory, userDomainMask, true)

    if let dirPath = paths.first
    {
        let imageUrl = URL(fileURLWithPath: dirPath).appendingPathComponent(fileName)
        let image = UIImage(contentsOfFile: imageUrl.path)
        return image
    }
    return nil
}
...