簡體   English   中英

stringByRemovingPercentEncoding 產生 null 字符串

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM