使用GTMBase64编码解码字符串
来源:互联网 发布:华为手机解锁软件 编辑:程序博客网 时间:2024/06/05 18:41
说明:BASE64不是用来加密的。你看看经过BASE64编码后的字符串,全部都是由标准键盘上面的常规字符组成,这样编码后的字符串在网关之间传递不会产生UNICODE字符串不能识别或者丢失的现象。你再仔细研究下EMAIL就会发现其实EMAIL就是用base64编码过后再发送的。然后接收的时候再还原。 还有一种情况下用BASE64编码也很好,比如一个图片文件,或者其他任何二进制文件。我可以把它编码成字符串。这样用XML或者数据库就能直接以文本的方式来存储这些文件了。
base64是一种编码方式,编码算法完全公开,所以逆向解码即可
使用GTMBase64需要在工程中加入三个文件
GTMDefines.hGTMBase64.hGTMBase64.m你可以在这里找到这三个文件http://code.google.com/p/google-toolbox-for-mac/source/browse/trunk/Foundation/?r=87
示例代码:
#import "GTMBase64.h"- (void)testExample{ NSData *data = [@"HelloWorld" dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]; NSString* encoded = [[NSString alloc] initWithData:[GTMBase64 encodeData:data] encoding:NSUTF8StringEncoding]; NSLog(@"encoded:%@", encoded); NSString* decoded = [[NSString alloc] initWithData:[GTMBase64 decodeString:encoded] encoding:NSUTF8StringEncoding]; NSLog(@"decoded:%@", decoded); [encoded release]; [decoded release];}
输出:
2012-04-10 12:13:10.121 fs_test[7370:b603] encoded:SGVsbG9Xb3JsZA==2012-04-10 12:13:10.122 fs_test[7370:b603] decoded:HelloWorld
使用示例:引入头文件:#import "GTMBase64.h"UIImage *image;NSData *data= UIImagePNGRepresentation(image); if([data length]>0){ data = [GTMBase64 encodeData:data]; //编码 } if([data length]>0){ data = [GTMBase64 decodeData:data]; //解码 }
- 使用GTMBase64编码解码字符串
- 使用GTMBase64编码解码字符串
- 使用GTMBase64编码解码字符串
- 使用GTMBase64编码解码字符串
- 使用GTMBase64编码解码字符串
- 使用GTMBase64编码解码字符串
- 使用GTMBase64编码解码字符串
- 使用GTMBase64编码解码字符串
- 字符串编码和解码
- GTMBase64
- 使用 apache 对 字符串进行base64编码解码
- 使用BASE64编码解码
- js对字符串编码,解码 .net对字符串编码,解码
- 字符串的编码和解码
- 字符串的编码解码技术
- 对字符串进行编码解码
- python 字符串编码与解码
- 字符串的编码与解码
- 从两个例子分析C语言的声明
- Asp.net循环遍历服务器文件夹及文件
- Java中Integer和String浅谈
- Asp.net Cookie保存上一个页面的URL地址
- 二进制文件和文本文件的区别
- 使用GTMBase64编码解码字符串
- Thinking in Java [Java编程机制] 学习笔记 -- 变量和对象
- Django时区设置的郁闷
- warning:4005 DXGI_STATUS_OCCLUDED,宏重定义
- 读完林锐《高质量C++/C 编程指南》后的几点想法
- ant中depends调用任务和antcall调用任务的区别
- java awt
- POJ 1062 (nyoj - 510)昂贵的聘礼
- 通过post请求发json