我需要检查从Swift中类型为UnsafeMutablePointer?的函数返回的变量的值。
声明如下:
var isDirectory: UnsafeMutablePointer<ObjCBool>?
当我打印出来的时候:
print(isDirectory)
我得到了:
为空
我不太擅长把Swift和Objective-C混在一起。任何帮助都将不胜感激。
以下是我实际的完整代码:
let directoryURL: URL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false)
let pathOldLocalStorage: String = directoryURL.path + "/OldLocalStorage"
FileManager.default.createFile(atPath: pathOldLocalStorage, contents: nil, attributes: nil)
var isDirectory: UnsafeMutablePointer<ObjCBool>?
let fileExists: Bool = FileManager.default.fileExists(atPath: pathOldLocalStorage, isDirectory: isDirectory)
print("fileExists=", fileExists, "isDirectory=", isDirectory as Any)
以下是调试窗口的结果:
fileExists= true isDirectory= nil
发布于 2018-08-19 09:08:26
你需要这样命名它:
var isDirectory: ObjCBool = false
let fileExists: Bool = FileManager.default.fileExists(atPath: pathOldLocalStorage, isDirectory: &isDirectory)
if fileExists {
print("isDirectory=\(isDirectory)")
}
https://stackoverflow.com/questions/51913655
复制相似问题