我尝试使用以下代码保存文件:
"B"+" "+"dd/MM/yyyy"+" "+"300"
但输出控制台返回此错误:
/Documents/contracts/18/03/B_18/03/2019_300.pdf for writing: No such file or directory.
我问/,空格不被接受吗?因为系统无法读取路径文件?
答案 0 :(得分:0)
/
斜杠是文件系统中的路径分隔符,并且在文件名组件中不允许使用。您可以在文件名中添加空格。
无效
"B"+" "+"dd/MM/yyyy"+" "+"300"
作品
"B"+" "+"dd MM yyyy"+" "+"300"
使用以下测试功能写入数据:
func writeFile(name:String)->Bool{
let fileManager = FileManager.default
do {
let documentDirectory = try fileManager.url(for: .documentDirectory, in: .userDomainMask, appropriateFor:nil, create:false)
let fileURL = documentDirectory.appendingPathComponent(name)
debugPrint("fileURL : ",fileURL)
let text = "test data text"
if let textData = text.data(using: .utf8) {
try textData.write(to: fileURL)
return true
}
} catch {
print(error)
}
return false
}
调用上述功能:
let name = "B"+" "+"18 03 2019"+" "+"300"
let status = self.writeFile(name: name)
输出:
file:/// Users / temp / Library / Developer / CoreSimulator / Devices / 8D204FCC-BDFE-4574-9DB2-3568F3018F98 / data / Containers / Data / Application / 2A56FBD7-1A1F-4D65-BDE2-FCE1DCBC2240 / Documents / B%2018%2003%202019%20300