iOS 中的Url 编码
来源:互联网 发布:傲剑飞龙升级数据大全 编辑:程序博客网 时间:2024/05/01 09:13
原文地址:http://blog.csdn.net/huifeidexin_1/article/details/7883984
iOS中编码转化
1.UTF-8转化
NSString *data = @"你好,北京!";
//转换成UTF-8
NSString *dataUTF8 = [datastringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"%@",dataUTF8);
//UTF-8转GBK,将UTF8代码替换,官方解释如下。
//Replaces all percent escapes with the matching characters as determined by the given encoding. Returns nil if the transformation is not possible (i.e. the percent escapes give a byte sequence not legal in the given encoding). See CFURLCreateStringByReplacingPercentEscapes in CFURL.h for more complex transformations
NSString *dataGBK = [dataUTF8stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"%@",dataGBK);
在Xcode4.2中执行结果如下:
将上述方法封装,如下:
//Unicode转UTF-8
+ (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 = [NSMutableStringstringWithString:input];
[outputStr replaceOccurrencesOfString:@"+"
withString:@" "
options:NSLiteralSearch
range:NSMakeRange(0, [outputStrlength])];
return [outputStrstringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
2.UTF-8和Unicode转化
//Unicode转UTF-8
+ (NSString*) replaceUnicode:(NSString*)aUnicodeString
{
NSString *tempStr1 = [aUnicodeStringstringByReplacingOccurrencesOfString:@"\\u"withString:@"\\U"];
NSString *tempStr2 = [tempStr1stringByReplacingOccurrencesOfString:@"\""withString:@"\\\""];
NSString *tempStr3 = [[@"\""stringByAppendingString:tempStr2]stringByAppendingString:@"\""];
NSData *tempData = [tempStr3dataUsingEncoding:NSUTF8StringEncoding];
NSString* returnStr = [NSPropertyListSerializationpropertyListFromData:tempData
mutabilityOption:NSPropertyListImmutable
format:NULL
errorDescription:NULL];
return [returnStrstringByReplacingOccurrencesOfString:@"\\r\\n"withString:@"\n"];
}
+(NSString *) utf8ToUnicode:(NSString *)string
{
NSUInteger length = [string length];
NSMutableString *s = [NSMutableStringstringWithCapacity:0];
for (int i = 0;i < length; i++)
{
unichar _char = [string characterAtIndex:i];
//判断是否为英文和数字
if (_char <= '9' && _char >='0')
{
[s appendFormat:@"%@",[stringsubstringWithRange:NSMakeRange(i,1)]];
}
else if(_char >='a' && _char <='z')
{
[s appendFormat:@"%@",[stringsubstringWithRange:NSMakeRange(i,1)]];
}
else if(_char >='A' && _char <='Z')
{
[s appendFormat:@"%@",[stringsubstringWithRange:NSMakeRange(i,1)]];
}
else
{
[s appendFormat:@"\\u%x",[stringcharacterAtIndex:i]];
}
}
return s;
}
- iOS 中的Url 编码
- iOS中的url编码问题
- iOS 中的 url 编码问题
- iOS中的url编码问题
- iOS 中的 url 编码问题
- iOS中的url编码问题
- iOS 中的 url 编码问题
- iOS 中的 url 编码问题
- [iOS]iOS 中的 url 编码问题
- [iOS]iOS 中的 url 编码问题
- iOS URL编码&base64编码
- IOS URL解码,编码
- iOS url 编码 解码
- iOS 编码 URL Data
- iOS url编码、解码
- iOS url中文编码
- ios url编码
- iOS 中的 url 中文和特殊字符编码问题
- 黑马程序员_毕向东_Java基础视频教程学习笔记(十九)
- Analyzing Display and Performance with Systrace
- 日历操作
- asp.net实现 EXCEL数据导入到数据库功能
- 多字节MFC工程下char*转CString乱码的研究
- iOS 中的Url 编码
- Fragment 多tab切换,顶部tab,顶部tab+viewpager
- #define总结 (网上资料汇集)
- APK手动签名 总结
- 重写Dialog写出自己的Dialog
- 解决iOS键盘输入中文后视图异常
- 用DDMS,查看进程/线程/内存/文件系统等
- HDU 1561(Tree Dp)
- 面向服务的体系结构(SOA) 云计算 数字化校园