通常,在Command Line Tools里面Xcode无法直接读取外部添加的文档文件。然而可以通过自定义添加一个Bundle来实现对外部文档的读取。
在Xcode里, 选择File –> New –> Target,在Target内选择Bundle,自定义该Bundle的名称,如DataBundle
。
将文件添加到此捆绑包中。将文件添加到Xcode,然后确保捆绑包在其目标成员资格部分中被勾选:
最后将捆绑包添加到您的目标中。在目标的构建阶段,打开复制文件阶段,然后单击+按钮。选择捆绑包,然后单击添加:
完成上述步骤便可以在程序内读取到文档, 假定文档名字为untitled.txt
, 在main.swift
内添加如下访问代码:
let currentDirectoryURL = URL(fileURLWithPath: FileManager.default.currentDirectoryPath)
let bundleURL = URL(fileURLWithPath: "DataBundle.bundle", relativeTo: currentDirectoryURL)
if let bundle = Bundle(url: bundleURL) {
if let path = bundle.path(forResource: "untitled", ofType: "txt") {
if let contents = try? String(contentsOfFile: path) {
print(contents)
}
} else {
print("No file Found")
}
}