[英]stringByRemovingPercentEncoding resulting in null string
我有一個文件路徑/Users/alexandra/Downloads/folder%20with%20spaces/
我想刪除百分比編碼並將其設為文件 URL。使用 stringByRemovingPercentEncoding 方法stringByRemovingPercentEncoding
字符串 null。
文檔說“刪除了百分比編碼序列的新字符串,如果接收方包含無效的百分比編碼序列,則為 nil。”,但我沒有看到%20
表示空格錯誤?
您沒有在 Objective-C 中向我們展示您的非工作代碼,但這在我的機器上運行良好(在 Swift 中):
if let path = "/Users/alexandra/Downloads/folder%20with%20spaces/".removingPercentEncoding {
let url = URL(fileURLWithPath: path)
print(url) // file:///Users/alexandra/Downloads/folder%20with%20spaces/
}
另一方面,由於您已經錯誤地獲取了字符串路徑名中的百分比編碼,為什么不將file://
放在它前面並完成它呢?
let path = "/Users/alexandra/Downloads/folder%20with%20spaces/"
if let url = URL(string: "file://" + path) {
print(url)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.