Как скопировать папку с файлами из комплекта IOS App в каталог документов - PullRequest
0 голосов
/ 08 февраля 2019

Я хотел бы предварительно заполнить структуру папок txt-файлов в папке документов приложения IOS при запуске приложения, скопировав предварительно подготовленную папку с файлами, которые я добавил в свой пакет приложений в качестве ресурсов.

Как просмотреть иерархическую структуру папок в комплекте приложений IOS и запросить содержимое каждой подпапки, а затем содержимое каждого файла.

1 Ответ

0 голосов
/ 08 февраля 2019

Для отображения элементов в App Bundle вы можете использовать этот код:

do {
    let fileURLs = try FileManager.default.contentsOfDirectory(at: Bundle.main.bundleURL, includingPropertiesForKeys: nil, options: .skipsHiddenFiles)
    for url in fileURLs {
        print("fileURL = \(url)")
    }
} catch let error {
    // Error Handle
}

Чтобы скопировать папку "MyTextFiles" в App Bundle в папку документов приложения:

    do {
        guard let myTextFilesInBundleURL = Bundle.main.url(forResource: "MyTextFiles", withExtension: nil) else { return }
        let docPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]
        let myTextFileURL = URL(fileURLWithPath: docPath).appendingPathComponent("MyTextFiles")
        try FileManager.default.copyItem(at: myTextFilesInBundleURL, to: myTextFileURL)
    } catch let error {
        // Error Handle
    }

Чтобы сделать это при запуске приложения, вы можете поместить этот код в didFinishLaunchingWithOptions или applicationDidBecomeActive

Надеюсь, это поможет.

...