char *base64_encode(char *binData, char *base64, int binLength)

{

int i = 0;

int j = 0;

int current = 0;

for (i = 0; i

//获取第一个6位

current = (*(binData+i) >> 2) & 0x3F;

*(base64 + j++) = base64char[current];

//获取第二个6位的前两位

current = (*(binData+i) <

//如果只有一个字符,那么需要做特殊处理

if (binLength <= (i+1)) {

*(base64 + j++) = base64char[current];

*(base64 + j++) = '=';

*(base64 + j++) = '=';

break;

}

//获取第二个6位的后四位

current |= (*(binData+i+1) >> 4 ) & 0xf;

*(base64 + j++) = base64char[current];

//获取第三个6位的前四位

current = (*(binData+i+1) <

if (binLength <= (i+2)) {

*(base64 + j++) = base64char[current];

*(base64 + j++) = '=';

break;

}

//获取第三个6位的后两位

current |= (*(binData+i+2) >> 6) & 0x03;

*(base64 + j++) = base64char[current];

//获取第四个6位

current = *(binData+i+2) & 0x3F;

*(base64 + j++) = base64char[current];

}

*(base64+j) = '\0';

return base64;

}

char *base64_decode(char const *base64Str, char *debase64Str, int encodeStrLen)

{

int i = 0;

int j = 0;

int k = 0;

char temp[4] = "";

for (i = 0; i

for (j = 0; j

if (*(base64Str + i) == base64char[j]) {

temp[0] = j;

}

}

for (j = 0; j

if (*(base64Str + i + 1) == base64char[j]) {

temp[1] = j;

}

}

for (j = 0; j

if (*(base64Str + i + 2) == base64char[j]) {

temp[2] = j;

}

}

for (j = 0; j

if (*(base64Str + i + 3) == base64char[j]) {

temp[3] = j;

}

}

*(debase64Str + k++) = ((temp[0] <>4) & 0x03);

if ( *(base64Str + i + 2)  == '=' )

break;

*(debase64Str + k++) = ((temp[1] <>2) & 0x0F);

if ( *(base64Str + i + 3) == '=' )

break;

*(debase64Str + k++) = ((temp[2] <

}

return debase64Str;

}

c php base64,C语言实现base64编码,base64解码相关推荐

  1. 用Gox语言进行JSON编码与解码-GX19.1

    在Gox语言中进行JSON的编码和解码还是比较方便的,有多种方法可以选择,我们来看看. 先看看对JSON字符串的解码. jsonStrT = `{"name": "Pet ...

  2. cmi编码用c语言实现,CMI编码与解码

    <CMI编码与解码>由会员分享,可在线阅读,更多相关<CMI编码与解码(2页珍藏版)>请在人人文库网上搜索. 1.CMI编码与解码设计原理CMI编码原理基带传输常用码型CMI编 ...

  3. Base64 算法原理,以及编码、解码【加密、解密】 介绍

    Base64编码,是我们程序开发中经常使用到的编码方法.它是一种基于用64个可打印字符来表示二进制数据的表示方法.它通常用作存储.传输一些二进制数据编码方法!也是MIME(多用途互联网邮件扩展,主要用 ...

  4. Base64 四种方式的编码和解码

    base64与字符串String之间的相互转换 package com.wzq;import javax.xml.bind.DatatypeConverter; import java.io.Unsu ...

  5. Java、JS、OC、Flutter的Base64编码和解码

    题记 -- 执剑天涯,从你的点滴积累开始,所及之处,必精益求精,即是折腾每一天. ** 你可能需要 CSDN 网易云课堂教程 掘金 EDU学院教程 知乎 Flutter系列文章 本文章将描述在 Jav ...

  6. 基于flash AS3.0 的BASE64编码与解码类

    代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--& ...

  7. Java 8中的Base64编码和解码

    转自:https://juejin.im/post/5c99b2976fb9a070e76376cc Java 8会因为将lambdas,流,新的日期/时间模型和Nashorn JavaScript引 ...

  8. btoa java_javascript atob()函数和 btoa()函数-Base64的编码与解码-Go语言中文社区

    在 JavaScript 中,有两个函数被分别用来处理解码和编码 base64 字符串: atob() //ASCII to Base64 btoa() //Base64 to ASCII atob( ...

  9. BASE64 编码和解码

    依赖jar: import org.apache.commons.codec.binary.Base64; BASE64和其他相似的编码算法通常用于转换二进制数据为文本数据,其目的是为了简化存储或传输 ...

  10. 【Java】Base64编码与解码

    1.概述 转载:http://www.ruanyifeng.com/blog/2008/06/base64.html 1.1. 昨天的<MIME笔记>中提到,MIME主要使用两种编码转换方 ...

最新文章

  1. tls 流量画像——直接使用图像处理的思路探索,待进一步观察
  2. 基于某网站的信息爬取与保存_指定查询内容
  3. openfire推送离线聊天信息的插件
  4. vs2013创建及使用DLL
  5. 为什么 Vue2 this 能够直接获取到 data 和 methods ? 源码揭秘!
  6. nohup命令让Linux程序永远在后台执行
  7. 让计算机开口说话教学反思,小班语言教案及教学反思《我会说普通话》
  8. python解析库详解_PyQuery库详解
  9. Centos 网络配置
  10. django之创建第8-2个项目-数据库数据提取之过滤操作符相关
  11. Spark StreamingContext创建方式
  12. WAP网站源代码--WAP新闻(文章)系统调试实战
  13. LOJ 6409. 「ICPC World Finals 2018」熊猫保护区
  14. MASM5.0下载安装与运行第一个HelloWorld
  15. win11游戏窗口化如何设置 windows11游戏窗口化的设置方法
  16. php微信怎么关注公众号,微信如何关注公众号即自动注册登录?
  17. 微信公众号问题:{errcode:40125,errmsg:invalid appsecret, view more at http:\/\/t.cn\/LOEdzVq, hints: [ ...
  18. 计算机毕业设计基于Android平台的公交线路查询系统app
  19. ts快捷键 vscode_VS Code快捷键
  20. 视频在线发布网站HTML模板分享

热门文章

  1. BDOC generated after customer product id is changed in CRM - CUST_MAT_INF
  2. 工作激发了我的热情,并不断激励着我” - SAP成都研究院Jerry Wang
  3. 使用jMeter的regular expression extract提取SSO form的XSRF protection token
  4. SAP OData的CSRF token在ABAP Netweaver服务器上是怎么生成的
  5. report CRM_CREATE_REQUEST_FOR_MAT
  6. why context node binding does not work in pop up window case
  7. Fiori note automatic delete deletion scenario
  8. SAP Marketing Cloud的技术架构
  9. nodejs启动机制分析
  10. 一个拥有12年SAP CRM WebClient UI开发经验的开发人员的分享