NSData to base64Encoding

转载 2012年03月25日 13:34:47

static const char encodingTable[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";

+ (NSString *)base64EncodingWithData:(NSData *)aData
{
	if ([aData length] == 0)
		return @"";
    
    char *characters = malloc((([aData length] + 2) / 3) * 4);
	if (characters == NULL)
		return nil;
	NSUInteger length = 0;
	
	NSUInteger i = 0;
	while (i < [aData length])
	{
		char buffer[3] = {0,0,0};
		short bufferLength = 0;
		while (bufferLength < 3 && i < [aData length])
			buffer[bufferLength++] = ((char *)[aData bytes])[i++];
		
		//  Encode the bytes in the buffer to four characters, including padding "=" characters if necessary.
		characters[length++] = encodingTable[(buffer[0] & 0xFC) >> 2];
		characters[length++] = encodingTable[((buffer[0] & 0x03) << 4) | ((buffer[1] & 0xF0) >> 4)];
		if (bufferLength > 1)
			characters[length++] = encodingTable[((buffer[1] & 0x0F) << 2) | ((buffer[2] & 0xC0) >> 6)];
		else characters[length++] = '=';
		if (bufferLength > 2)
			characters[length++] = encodingTable[buffer[2] & 0x3F];
		else characters[length++] = '=';	
	}
	
	return [[[NSString alloc] initWithBytesNoCopy:characters length:length encoding:NSASCIIStringEncoding freeWhenDone:YES] autorelease];
}
 
//ps:这里有一个不错的base64的库:https://github.com/tangqiaoboy/xcode_tool/tree/master/Encoding


iOS UIImage 装换成 base64字符串

转载:http://codego.net/205499/ 1. 我不知道你为什么不找你的问题这是一个非常古老的问题和可以在这里和这里找到。 不管怎么说, 您需要先添加NSData类别到您的项目,...

ios7之后提供Base64的API

在IOS7之后,苹果提供了将NSData转化为Base64编码的API: /* Create an NSData from a Base-64 encoded NSString using the ...

iOS开发-基础:使用Base64编解码NSData和NSString对象

转自:http://itony.me/488.html 简介: 随着iOS7正式版推出,Apple增加了使用Base64编解码的支持。在这篇文章中我们将通过两个例子,演示使用Base64编解码...

iOS 7: 使用Base64编解码NSData和NSString对象

http://itony.me/488.html 随着iOS7正式版推出,Apple增加了使用Base64编解码的支持。在这篇文章中我们将通过两个例子,演示使用Base64编解码NSData...
  • GCZtian
  • GCZtian
  • 2015年12月01日 19:09
  • 500

通过ios实现RSA加密解密中的 NSData+Base64.h/m相关代码

NSData+Base64.h代码 // // NSData+Base64.h // 121mai // // Created by 薛XX on 16/2/16. // // #import...

ios开发答疑录系列​---(六)NSString和NSData通过Base64编码的相互转换

============================================================博文原创,转载请声明出处电子咖啡(原id蓝岩)=================...

iOS 7: 使用Base64编解码NSData和NSString对象

http://itony.me/488.html 随着iOS7正式版推出,Apple增加了使用Base64编解码的支持。在这篇文章中我们将通过两个例子,演示使用Base64编解码NSData和NS...
  • xyxjn
  • xyxjn
  • 2015年05月26日 15:43
  • 52118

NSData+Base64

NSData+Base64.h #import @interface NSData (Base64) + (NSData *)dataWithBase64Enc...

解决Control character in cookie value, consider BASE64 encoding your value 问题

出自:http://rwg109.iteye.com/blog/759342 项目当中用到cookie保存中文,但是会报如下错误: Control character in cookie v...

Pitfall in node crypto and base64 encoding

Base64 is a commonly used encoding for transmitting binary data in text format, although it is kind ...
  • xsl_bj
  • xsl_bj
  • 2016年02月29日 11:55
  • 669
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:NSData to base64Encoding
举报原因:
原因补充:

(最多只允许输入30个字)