Objective-c NSString 转utf-8和gb2312
来源:互联网 发布:淘宝日用杂货铺 编辑:程序博客网 时间:2024/06/05 17:49
转载自:http://www.cocoachina.com/bbs/read.php?tid=62897
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma mark -
#pragma mark Encode Chinese to ISO8859-1 in URL
-(
NSString
*)EncodeUTF8Str:(
NSString
*)encodeStr{
CFStringRef nonAlphaNumValidChars = CFSTR(
"![ DISCUZ_CODE_1 ]’()*+,-./:;=?@_~"
);
NSString
*preprocessedString = (
NSString
*)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, (CFStringRef)encodeStr, CFSTR(
""
), kCFStringEncodingUTF8);
NSString
*newStr = [(
NSString
*)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)preprocessedString,
NULL
,nonAlphaNumValidChars,kCFStringEncodingUTF8) autorelease];
[preprocessedString release];
return
newStr;
}
#pragma mark -
#pragma mark Encode Chinese to GB2312 in URL
-(
NSString
*)EncodeGB2312Str:(
NSString
*)encodeStr{
CFStringRef nonAlphaNumValidChars = CFSTR(
"![ DISCUZ_CODE_1 ]’()*+,-./:;=?@_~"
);
NSString
*preprocessedString = (
NSString
*)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, (CFStringRef)encodeStr, CFSTR(
""
), kCFStringEncodingGB_18030_2000);
NSString
*newStr = [(
NSString
*)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)preprocessedString,
NULL
,nonAlphaNumValidChars,kCFStringEncodingGB_18030_2000) autorelease];
[preprocessedString release];
return
newStr;
}
使用sudzc连接webService时出现了中文乱码问题,使用NSUTF8encoding 依然是乱码。
使用上面的EncodeUTF8Str方法转码,比如:苹果,转码后是 %E8%8B%B9%E6%9E%9C,这样服务器端解码就可以了。
- Objective-c NSString 转utf-8和gb2312
- UTF-8和gb2312
- GB2312和UTF-8
- GB2312和UTF-8
- utf-8和gb2312互转代码.
- GB2312转UTF-8
- UTF-8转GB2312
- UTF-8转GB2312
- utf-8转GB2312
- gb2312转utf-8
- gb2312 转 utf-8
- Objective-C NSString和NSMutableString
- c/c++ GB2312编码和UTF-8互转
- c/c++ GB2312编码和UTF-8互转
- 【C++】UTF-8字符和GB2312字符相互转换函数
- C中字符串UTF-8和GB2312互转
- 编码 GB2312 和 UTF-8
- UTF-8和GB2312转换
- ACM推荐书藉与培训
- 字符串递归求长(不用任何其他变量,不用goto,不用循环)
- 在XCode内建立多个Target
- 网络流24题
- linux移植到window相关的函数
- Objective-c NSString 转utf-8和gb2312
- android 常用action
- ACM基本算法分类、推荐学习资料和配套pku习题
- C#中获取Excel文件的第一个表名
- u-boot-1.1.6中关于ARM920T协处理器操作的分析
- 在ubuntu下动手编译arm-elf工具
- 算法导论CLRS 2.1 插入排序
- Xcode4如何添加Frameworks
- paip.读取WEB.XML中的参数值总结