ina*_*nva 17 url nsurl ios swift
我需要用阿拉伯语发送一个URL,所以我需要在将它放入URL之前对其进行编码.我正在使用Swift代码.
以下是我真正需要的一个例子
var s = "www.example.com/?????? ?????"
let url = NSURL(string : s)
Run Code Online (Sandbox Code Playgroud)
所以这个词(السلامعليكم)是阿拉伯字符,我想要发送.
yar*_*rlg 30
Swift 2.0
let urlwithPercentEscapes = myurlstring.stringByAddingPercentEncodingWithAllowedCharacters( NSCharacterSet.URLQueryAllowedCharacterSet())
Run Code Online (Sandbox Code Playgroud)
斯威夫特3
let urlwithPercentEscapes = myurlstring.addingPercentEncoding( withAllowedCharacters: .urlQueryAllowed)
Run Code Online (Sandbox Code Playgroud)
Vya*_*lav 10
为了改善@ Druva的答案 ,在项目的某个地方创建一个扩展
Swift 2.0
extension String
{
func encodeUrl() -> String
{
return self.stringByAddingPercentEncodingWithAllowedCharacters( NSCharacterSet.URLQueryAllowedCharacterSet())
}
func decodeUrl() -> String
{
return self.stringByRemovingPercentEncoding
}
}
Run Code Online (Sandbox Code Playgroud)
Swift 3.0
extension String
{
func encodeUrl() -> String
{
return self.addingPercentEncoding( withAllowedCharacters: .urlQueryAllowed)
}
func decodeUrl() -> String
{
return self.stringByRemovingPercentEncoding
}
}
Run Code Online (Sandbox Code Playgroud)
你需要编写url来编写代码.您可以使用该字符串方法执行此操作:
stringByAddingPercentEscapesUsingEncoding(NSStringEncoding)
Run Code Online (Sandbox Code Playgroud)
所以你的代码将是:
var s = "www.example.com/?????? ?????"
// you may add check before force unwrapping
let url = NSURL(string : s.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
17862 次 |
最近记录: |