IOS中对Url进行编码和解码
来源:互联网 发布:gdi 高级编程 编辑:程序博客网 时间:2024/05/16 05:04
1.非ARC模式下
- (NSString *)encodeToPercentEscapeString: (NSString *) input
{
// Encode all the reserved characters, per RFC 3986
// (<http://www.ietf.org/rfc/rfc3986.txt>)
NSString *outputStr = (NSString *)
CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
(CFStringRef)input,
NULL,
(CFStringRef)@"!*'();:@&=+$,/?%#[]",
kCFStringEncodingUTF8);
return outputStr;
}
- (NSString *)decodeFromPercentEscapeString: (NSString *) input
{
NSMutableString *outputStr = [NSMutableString stringWithString:input];
[outputStr replaceOccurrencesOfString:@"+"
withString:@" "
options:NSLiteralSearch
range:NSMakeRange(0, [outputStr length])];
return [outputStr stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
2. ARC模式下
- (NSString *)encodeToPercentEscapeString: (NSString *) input
{
NSString* outputStr = (__bridge NSString *)CFURLCreateStringByAddingPercentEscapes(
NULL, /* allocator */
(__bridge CFStringRef)input,
NULL, /* charactersToLeaveUnescaped */
(CFStringRef)@"!*'();:@&=+$,/?%#[]",
kCFStringEncodingUTF8);
return outputStr;
}
- (NSString *)decodeFromPercentEscapeString: (NSString *) input
{
NSMutableString *outputStr = [NSMutableString stringWithString:input];
[outputStr replaceOccurrencesOfString:@"+"
withString:@""
options:NSLiteralSearch
range:NSMakeRange(0, [outputStr length])];
return [outputStr stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
- IOS中对Url进行编码和解码
- IOS中对Url进行编码和解码
- IOS中对Url进行编码和解码
- IOS中对Url进行编码和解码
- 对URL传递的参数进行编码和解码
- ios url 编码和解码
- ios url 编码和解码
- ios url 编码和解码
- ios url 编码和解码
- iOS url编码和解码。
- ios url 编码和解码
- ios url 编码和解码
- JS对URL字符串进行编码/解码
- JAVA 对 URL 进行 编码与解码
- JAVA 对 URL 进行 编码与解码
- 为什么要对URL进行编码、解码
- iOS URL编码和URL解码
- URL传递中文参数乱码----js对url进行编码和解码
- 自定义UINavigationController的后退按钮标题
- Android入门
- UVA - 10250 The Other Two Trees
- 秋的涵义
- C# 导出 Excel 和相关打印设置
- IOS中对Url进行编码和解码
- xml和json的选择
- org.springframework.dao.DataAccessException not found
- 堆排序
- CMake
- AE开发之PageLayoutControl
- 魔兽争霸dota内外网p2p联机玩游戏-不需要对战平台的联机
- 金融系列13《卡面标识》
- Oracle11GR2 Installation issue INS-10008