Dzwebs.Net

撰写电脑技术杂文十余年

c++分割图片的base64编码

Admin | 2022-3-31 8:49:50 | 被阅次数 | 691

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  图片的base64编码,形如:data:image/png:base64,IVBORw0kg……

  其中,有一个非常关键的符号,那就是逗号,就是base64,这里的逗号,逗号前面是图像的类型的信息,逗号的后面那一大串,才是图片的有效的编码信息。

  现在的问题是,如何从base64编码中把图像的有效的编码分割出来,使用的方法当然是通过逗号将其分割开来。

  在c++里面,要想实现分割,没那么容易,因为c++根本就没有这样的函数,所以,想实现这种功能,得自己构造函数实现此功能。

  一、头文件

  #include <sstream> 

  必须引入如上的头文件。

  二、自定义函数代码

  //字符串分割的函数
  vector<string> mystrsplit(const string& str, const char pattern)
  {
  vector<string> res;
  stringstream input(str);   //读取str到字符串流中
  string temp;
  //使用getline函数从字符串流中读取,遇到分隔符时停止,和从cin中读取类似
  //注意,getline默认是可以读取空格的
  while (getline(input, temp, pattern))
  {
  res.push_back(temp);
  }
  return res;
  }

  注意哦,上述函数的功能是:通过分割符进行分割,返回数组形式的数据。还有,可以使用多个分割符。这里相当方便。

  三、使用方法

  char fgf[]=",";//这里可用使用多个分割符哦

  string MyOcrResult = "";

  MyOcrResult = MyBase64Ocr(mystrsplit(picbase64,*fgf)[1]);//获取图片base64码逗号之后的有效的编码


网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231