Bre*_*art 4 iphone objective-c urlencode
我正在尝试编码一个URL,我以前从未这样做过,所以当我没有得到预期的结果时我很困惑.我正在使用CFURLCreateStringByAddingPercentEscapes这个,但返回的内容与任何在线URL编码器/解码器完全不同,例如
-(void)urlEncodedString{
NSString *str = @"\"Hi!! my name is John. \n What's your's?\"";
NSLog([(NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)str, NULL, CFSTR("!$&'()*+,-./:;=?@_~"), kCFStringEncodingUTF8) autorelease]);
}
Run Code Online (Sandbox Code Playgroud)
我期待的是:
%5C%22Hi%21%21%20my%20name%图20是%20John.%20%5 CN%20What%-27%20your%-27%3F%5C%22
但相反,我得到:
2i2212yame 0s2ohn3.786691E-27020A2º»åå2our0.0000002
这不可能是正常的.我一直在寻找和尝试一切,我做的方式显然应该工作.谁能指出我正确的方向?
您将结果作为第一个字符串传递给NSLog需要使用百分号的格式的字符串.你基本上用内存中的随机数据填充字符串来代替每个%escape.使用Objective-C对象说明符修复此日志:
NSLog(@"%@", [(NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)str, NULL, CFSTR("!$&'()*+,-./:;=?@_~"), kCFStringEncodingUTF8) autorelease]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3851 次 |
| 最近记录: |