无论如何不包括文件路径的开头



好的,所以我的项目需要使用 textFile 来存储数据。当我将其传递给老师时,我不希望文件重置或出现错误,因为无论如何都找不到路径来完成此操作。(斯威夫特的新手。

func writeFile()
{
let str = temp
let path = "/Users/xdesss/Desktop/Projectv4/Project/holder.txt"
let filename = URL(fileURLWithPath: path)
do {
try str.write(to: filename, atomically: true, encoding: .utf8)
try print(String(contentsOf: filename))
print("This Url: (path)")
} catch {
print("fail")
}
}
/Desktop/Projectv4/Project/holder.txt

是本地计算机上的绝对路径。如果在另一台计算机上运行此项目,则此路径将不存在,并且.txt文件将不存在。

您需要使用相对路径,因此将使用项目文件夹作为基础加载.txt文件。

为了实现这一点,你可以使用Swift文件管理器。

文件系统内容的便捷接口,以及与之交互的主要方式。

使用它,您的代码将如下所示:

func writeFile() {
let str = temp
let file = "holder.txt"
let currentDirectoryURL = URL(fileURLWithPath: FileManager.default.currentDirectoryPath)
let fileURL = currentDirectoryURL.appendingPathComponent(file)
do {
try str.write(to: fileURL, atomically: true, encoding: .utf8)
try print(String(contentsOf: fileURL))
print("This Url: (fileURL)")
}
catch {/* error handling here */}
}

最新更新