将URL转换为正确的格式

时间:2014-02-07 03:05:45

标签: objective-c nsstring nsdata nsurl

过去几个小时我一直试图解决这个问题,而且我似乎无法解决任何问题。我的问题很简单,我需要转换一些输入到URL的字符串,以便正确地将空格和特殊字符发送到接收服务器。

我有3个字符串:setFirstLast.textemailAddress.textvisitingTest.text。我需要将它们转换为类似:John%20Smith而不是John Smith的内容。

2 个答案:

答案 0 :(得分:0)

此处,$ url1是您的原始网址。

$url1 = "http://X.X.X.X/print/postToDB.php?namestamp=John Smith&emailstamp=john@example.com&visitingstamp=Bob Clark";

你可以这样做:

$url2 = urlencode($url1);
//prints: http%3A%2F%2FX.X.X.X%2Fprint%2FpostToDB.php%3Fnamestamp%3DJohn%20Smith%26emailstamp%3Djohn%40example.com%26visitingstamp%3DBob%20Clark%0A

$url3 = str_replace(' ','%20', $url1);
//prints: http://X.X.X.X/print/postToDB.php?namestamp=John%20Smith&emailstamp=john@example.com&visitingstamp=Bob%20Clark

这有帮助吗?

答案 1 :(得分:0)

您需要使用

[string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]

获得所需的结果。 string是包含原始文本的对象,NSUTF8StringEncoding是可用的众多编码选项之一。