GBK编码,解码。以及,有关url中文转码!
2016-07-04 13:22
218 查看
1.在去年的时候遇到过一个需求就是说,服务器那边接收用户名密码时必须是base64形式的传递,所以没办法,就只能去找这方面的资料,找来找去倒是也找到了一个比较好的处理方式来处理,,纯代码码上:
编码--->以base64形势编码,
NSString *username = [[NSUserDefaults
standardUserDefaults] objectForKey:@"username"];
NSString *password = [[NSUserDefaults
standardUserDefaults] objectForKey:@"password"];
//编码的过程
NSData *passwordData = [password
dataUsingEncoding:NSASCIIStringEncoding];
NSString *encodeResult = [passwordData
base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];
NSString *urlStr = [NSString
stringWithFormat:@"%@/GetGgbFile.aspx?username=%@&epassword=%@&filename=%@",URL_ServerHost,[Ecoding
ecodingWithString:username],[Ecoding
ecodingWithString:encodeResult],[Ecoding
ecodingWithString:self.documentId]];
NSLog(@"%@",urlStr);
[MBProgressHUD
showHUDAddedTo:self.view
animated:true];
[self.webView
loadRequest:[NSURLRequest
requestWithURL:[NSURL
URLWithString:urlStr]]];
解码--->base64解码的过程
NSData* decodeData = [[NSData alloc] initWithBase64EncodedString:encodeResult options:0];
NSString* decodeStr = [[NSString alloc] initWithData:decodeData encoding:NSASCIIStringEncoding];
UTF8-->GBK
+(NSString *)ecodingWithString:(NSString *)str{
NSStringEncoding gbkEncoding =
CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
return [str
stringByAddingPercentEscapesUsingEncoding:gbkEncoding];
}
上述在编码转换url时,将utf8转为GBK形式,这是一个封装的方法,直接调这个方法即可。传一个字符串,出来一个转换后的。
2.如果请求的url包涵中文,怎么办?那么这时候就需要去给他转换成utf8形式的了。
NSString *username = [textField1.text
stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]
直接这一句话就行了。是不是很简单呢?
好了,搞定!
编码--->以base64形势编码,
NSString *username = [[NSUserDefaults
standardUserDefaults] objectForKey:@"username"];
NSString *password = [[NSUserDefaults
standardUserDefaults] objectForKey:@"password"];
//编码的过程
NSData *passwordData = [password
dataUsingEncoding:NSASCIIStringEncoding];
NSString *encodeResult = [passwordData
base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];
NSString *urlStr = [NSString
stringWithFormat:@"%@/GetGgbFile.aspx?username=%@&epassword=%@&filename=%@",URL_ServerHost,[Ecoding
ecodingWithString:username],[Ecoding
ecodingWithString:encodeResult],[Ecoding
ecodingWithString:self.documentId]];
NSLog(@"%@",urlStr);
[MBProgressHUD
showHUDAddedTo:self.view
animated:true];
[self.webView
loadRequest:[NSURLRequest
requestWithURL:[NSURL
URLWithString:urlStr]]];
解码--->base64解码的过程
NSData* decodeData = [[NSData alloc] initWithBase64EncodedString:encodeResult options:0];
NSString* decodeStr = [[NSString alloc] initWithData:decodeData encoding:NSASCIIStringEncoding];
UTF8-->GBK
+(NSString *)ecodingWithString:(NSString *)str{
NSStringEncoding gbkEncoding =
CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
return [str
stringByAddingPercentEscapesUsingEncoding:gbkEncoding];
}
上述在编码转换url时,将utf8转为GBK形式,这是一个封装的方法,直接调这个方法即可。传一个字符串,出来一个转换后的。
2.如果请求的url包涵中文,怎么办?那么这时候就需要去给他转换成utf8形式的了。
NSString *username = [textField1.text
stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]
直接这一句话就行了。是不是很简单呢?
好了,搞定!
相关文章推荐
- java-用HttpURLConnection发送Http请求.
- VBScript 剪贴板抓取URL并在浏览器中打开
- ASP编码必备的8条原则
- C# Base 64 编码/解码实现代码
- 用vbs 实现从剪贴板中抓取一个 URL 然后在浏览器中打开该 Web 站点
- XML指南——XML编码
- asp获取URL参数的几种方法分析总结[原创]_应用技巧_脚本之家
- C#中字符串编码处理
- ExtJS中文乱码之GBK格式编码解决方案及代码
- 程序员趣味读物 谈谈Unicode编码
- 文本文件编码方式区别
- C语言安全编码之数值中的sizeof操作符
- C#实现在网页中根据url截图并输出到网页的方法
- C#实现获取文本文件的编码的一个类(区分GB2312和UTF8)
- VC中BASE64编码和解码使用详解
- 计算机中的字符串编码、乱码、BOM等问题详解
- zend framework框架中url大小写问题解决方法
- url decode problem 解决方法
- php url地址栏传中文乱码解决方法集合
- 深入理解Python字符编码 推荐