我想在应用程序启动时在IOS App Documents文件夹中预填充txt文件的文件夹结构,复制预先准备的文件文件夹,并将其作为资源添加到我的应用程序包中。
如何浏览IOS App捆绑软件中的分层文件夹结构,并请求每个子文件夹的内容,然后请求每个文件的内容。
答案 0 :(得分:0)
要列出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
}
要将App Bundle中的文件夹“ MyTextFiles”复制到您的App Document文件夹中:
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
希望这会有所帮助。