以下是C++代码示例,将base64字符串转换为图片:

#include <iostream>
#include <string>
#include <sstream>
#include <fstream>
#include <vector>
#include <cstdint>
#include <algorithm>
#include <iterator>

// base64解码函数
std::vector<uint8_t> base64_decode(const std::string& input)
{
    static const std::string base64_chars =
        "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
        "abcdefghijklmnopqrstuvwxyz"
        "0123456789+/";

    std::vector<uint8_t> output;
    size_t i = 0;

    while (i < input.size())
    {
        char b[4] = { 0 };
        size_t j = 0;

        // 读取4个字符
        while (j < 4 && i < input.size())
        {
            b[j++] = input[i++];
        }

        // 对4个字符进行解码
        uint8_t d[3] = { 0 };
        for (size_t k = 0; k < 4; k++)
        {
            if (b[k] == '=')
            {
                d[k] = 0;
            }
            else
            {
                auto it = std::find(base64_chars.begin(), base64_chars.end(), b[k]);
                if (it != base64_chars.end())
                {
                    size_t index = std::distance(base64_chars.begin(), it);
                    d[k] = static_cast<uint8_t>(index);
                }
            }
        }

        // 将3个解码后的字符存储到输出数组中
        output.push_back((d[0] << 2) | (d[1] >> 4));
        if (b[2] != '=')
        {
            output.push_back((d[1] << 4) | (d[2] >> 2));
        }
        if (b[3] != '=')
        {
            output.push_back((d[2] << 6) | d[3]);
        }
    }

    return output;
}

int main()
{
    // 读取base64字符串
    std::string base64_str = "iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAXdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMjHx9soAAAAzklEQVRIx+2T0Q2AMAwE/n3q/3HcBdQMIRcQI9W7q8rHrNnLJrRvFyWY8p5a5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x5p5J5x
C++base64转图片

原文地址: https://www.cveoy.top/t/topic/dGBT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录