Проблема с кодировкой URL-адреса iPhone - PullRequest
4 голосов
/ 13 октября 2010

Есть небольшая проблема. Попытка отправить XML на сервер. Для этого мне нужно закодировать строку XML в формате URL.

NSString *encodedString = [NSString stringWithFormat:@"xmlValue=%@",[post stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding]];

Это то, что у меня есть, и оно работает для всех персонажей, КРОМЕ «=». Это не конвертируется в% 3D. Кто-нибудь еще когда-либо имел эту проблему раньше? Я указываю неправильный тип кодировки? Я также попробовал "NSUTF8StringEncoding".

Это небольшой фрагмент строки XML:

@"<xml-service application=\"broadcast\" type=\"REQUEST\"><identity token=\"xxxxxxxx\".....

Любая помощь будет оценена! Спасибо

Ответы [ 2 ]

6 голосов
/ 13 октября 2010

Это должно решить вашу проблему:

  NSString * encodedString = (NSString *)CFURLCreateStringByAddingPercentEscapes(
    NULL,
    (CFStringRef)unencodedString,
    NULL,
    (CFStringRef)@"!*'();:@&=+$,/?%#[]",
    kCFStringEncodingUTF8 );

Источник

0 голосов
/ 29 мая 2013

Вы можете попробовать это. Я нашел это полезным.

NSString *sampleUrl = @"http://www.google.com/search.jsp?params=Java Developer";
NSString* encodedUrl = [sampleUrl stringByAddingPercentEscapesUsingEncoding:
 NSASCIIStringEncoding];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...