`
jsntghf
  • 浏览: 2476769 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

将图片进行Base64编码后传输

    博客分类:
  • iOS
阅读更多

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,可用于在HTTP环境下传递较长的标识信息。使用Base64编码传输数据的主要好处是减少了HTTP请求,但却会使数据量变大。

 

Base64编码的思想是采用64个基本的ASCII码字符对数据进行重新编码。它将需要编码的数据拆分成字节数组,以3个字节为一组。按顺序排列24位数据,再把这24位数据分成4组,即每组6位。再在每组的最高位前补两个0凑足一个字节。这样就把一个3字节为一组的数据重新编码成了4个字节。当所要编码的数据的字节数不是3的整数倍,也就是说在分组时最后一组不够3个字节,这时在最后一组填充1到2个0字节。并在最后编码完成后在结尾添加1到2个"="。

 

从以上编码规则可以得知,通过Base64编码,原来的3个字节编码后将成为4个字节,即字节增加了33.3%,数据量相应变大。所以20M的数据通过Base64编码后大小大概为20M * 133.3% = 26.67M。

 

主要用到了下面两个方法。

 

+ (NSString *) image2String:(UIImage *)image {
	NSData *pictureData = UIImageJPEGRepresentation(image, 0.5);
	NSString *pictureDataString = [pictureData base64Encoding];
	return pictureDataString;
}

+ (UIImage *) string2Image:(NSString *)string {
	UIImage *image = [UIImage imageWithData:[NSData dataWithBase64EncodedString:string]];
	return image;
}
分享到:
评论

相关推荐

    IOS-图片编码-Base64-例子

    IOS 上将图片进行BASE64编码,方便网络传输的例子

    一个很好的Base64编码解码工具

    Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3*8 = 4*6 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的字符串理论...

    图片转BASE64编码器

    此工具主要用于把图片转base64字符和互转,方便日常开发过程中出现图片还原和自动生成base64数据,用于验证传输数据是否有问题

    JavaScript实现Base64编码转换

    简介 Base64是一种基于64个可打印字符来表示二进制数据的表示方法。由于2的6次方等于64,所以每6个...当然,你也可以将图片、文本和音视频转换成二进制序列,再然后转换为Base64编码。我们这里讨论的是如何将二进制转换

    Java Base64编码方法详解及实例分析

    总之,Base64编码是网络传输中常用的数据编码方式,它可以将二进制数据转换成可打印的ASCII字符串,确保数据在传输过程中的安全性。Base64.encodeBase64String方法是Java中进行Base64编码的一种便捷实现,能够轻松地...

    用.net编写的base64 编码

    base64 编码,用于实现远程邮件传输。是用.net编写的。

    base64编码转换器

    base64编码转换器 网络传输编码工具 支持文件转换

    Base64 编码 解码器 V1.6

    这是一个很好的Base64编-解码工具.转换很方便,支持中文,支持UTF-8,Unicode编码,可对对图片数据... 这个小软件可以很方便的把8Bit字节码转换成Base64编码,也可以很方便的将Base64编码转成8Bit字节码。即输即转。

    Base64编码(VC++实现)

    Base64内容传送编码(VC++实现):常用于电子邮件的数据传输中

    Android图片的Base64编码与解码及解码Base64图片方法

    Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。接下来通过本文给大家分享Android图片的Base64编码与解码及解码Base64图片,需要的朋友参考...

    Python程序设计:base64解码.pptx

    在HTTP环境下很多内容不适合明文传输,将其通过Base64进行编码是一种很好的选择。此次我们的任务是会使用python对文本内容进行base64的编码和解码。 任务 Base64解码 任务知识点 Base64编码 Base64模块 知识点:Base...

    Loadrunner对base64编码解码的代码

    在传输过程使用base64编码格式时,使用Loadrunner对应用报文进行测试,本代码中包含了base64编码,解码过程。

    Base64编码解码、无乱码。本人亲自测试使用。.

    本人亲自测试了这个软件,在转换的时候注意...Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。Base64编码可用于在HTTP环境下传递较长的标识信息。

    生成pdf格式表格并使用base64进行编码传输,可以保存本地

    生成pdf格式表格保存本地并使用base64进行编码传输

    base64编码工具

    Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。Base64编码可用于在HTTP环境下传递较长的标识信息。

    c# 用Base64实现文件上传

    Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,它是一种基于64个可打印字符来表示二进制数据的方法。  使用base64进行文件上传的具体流程是:前台使用js将文件转换为base64格式,后台通过高级编程语言...

    python的base64和pillow库实现的编码解码程序源代码

    Base64是一种编码方法,可以将二进制数据转换为可打印的ASCII字符,以便在文本环境中传输和存储。Python的base64库提供了编码和解码函数。使用base64库进行编码的步骤如下:将需要编码的数据转换为bytes类型。调用b...

    JS 实现Base64编码与解码实例详解

    Base64其实是一种简单的置换加密方式,但是BASE64的用处往往并不是为了防止信息泄露,而且为了方便传输,进过BASE64编码后的信息会比原始信息长,大概是4/3倍。 Base64是一种基于64个可打印字符来表示二进制数据的...

    支持中文和urlsafe编码的Base64编解码库

    虽然JavaScript中可以使用原生的btoa和atob函数进行Base64的编解码。但是不支持中文字符,并且不支持url-safe的Base64编...当编码后的结果要是通过get请求传输时(比如跨域提交时),结果中包含有'/'字符将导致出错。

Global site tag (gtag.js) - Google Analytics