C'est ma string.
NSSsortingng *str=@"A & B";
maintenant je le convertis en NSUTF8SsortingngEncoding.
str = [str ssortingngByAddingPercentEscapesUsingEncoding:NSUTF8SsortingngEncoding]; NSLog(@"str: %@", str);
l'espace est remplacé par% 20 mais & n'est pas remplacé par% 26.
show nslog
str: A%20&%20B
Cela ne fonctionne pas non plus
NSSsortingng *str=@"(A) & (B)"; str = [str ssortingngByAddingPercentEscapesUsingEncoding:NSUTF8SsortingngEncoding]; NSLog(@"str: %@", str);
show nslog
str: (A)%20&%20(B)
J'ai besoin de cela parce que je dois passer cela en tant que valeur de paramètre dans webservice. Quelqu'un a une idée pour ça. S'il vous plaît aidez-moi pour ce problème. Une belle réponse sera appréciée
Vous pouvez utiliser CFURLCreateSsortingngByAddingPercentEscapes()
pour cela:
NSSsortingng *ssortingng = ...; NSSsortingng *encodedSsortingng = CFBridgingRelease(CFURLCreateSsortingngByAddingPercentEscapes(kCFAllocatorDefault, (__bridge CFSsortingngRef)ssortingng, NULL, CFSTR("!*'();:@&=+$,/?%#[]"), kCFSsortingngEncodingUTF8));