我知道与此相关的一些问题,但是它们在Objective-C中。
如何 在实际的iPhone上*.txt使用Swift 访问应用程序中包含的文件?我希望能够从中读取和写入。如果您想看一下,这是我的项目文件。如有必要,我很乐意添加详细信息。 *
.txt
只需在应用程序捆绑中搜索资源
var filePath = NSBundle.mainBundle().URLForResource("file", withExtension: "txt")
但是,您无法写入它,因为它位于应用程序资源目录中,并且必须在文档目录中创建它才能写入
var documentsDirectory: NSURL? var fileURL: NSURL? documentsDirectory = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).last! fileURL = documentsDirectory!.URLByAppendingPathComponent("file.txt") if (fileURL!.checkResourceIsReachableAndReturnError(nil)) { print("file exist") }else{ print("file doesnt exist") NSData().writeToURL(fileURL!,atomically:true) }
现在您可以从 fileURL* 访问它 *
编辑-2018年8月28日
这是在 Swift 4.2中的操作方法
var filePath = Bundle.main.url(forResource: "file", withExtension: "txt")
在文档目录中创建它
if let documentsDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).last { let fileURL = documentsDirectory.appendingPathComponent("file.txt") do { if try fileURL.checkResourceIsReachable() { print("file exist") } else { print("file doesnt exist") do { try Data().write(to: fileURL) } catch { print("an error happened while creating the file") } } } catch { print("an error happened while checking for the file") } }