C++怎么实现Base64编码

avatar
作者
猴君
阅读量:2

在C++中实现Base64编码可以使用现有的Base64库,也可以自己编写实现。以下是一个使用现有Base64库的示例:

#include <iostream> #include <string> #include <vector> #include <openssl/bio.h> #include <openssl/evp.h> #include <openssl/buffer.h>  std::string base64_encode(const std::vector<unsigned char> &data) {     BIO *bio, *b64;     BUF_MEM *bufferPtr;      b64 = BIO_new(BIO_f_base64());     bio = BIO_new(BIO_s_mem());     bio = BIO_push(b64, bio);      BIO_set_flags(bio, BIO_FLAGS_BASE64_NO_NL);     BIO_write(bio, data.data(), data.size());     BIO_flush(bio);     BIO_get_mem_ptr(bio, &bufferPtr);     BIO_set_close(bio, BIO_NOCLOSE);     BIO_free_all(bio);      return std::string(bufferPtr->data, bufferPtr->length); }  int main() {     std::string input = "Hello, World!";     std::vector<unsigned char> data(input.begin(), input.end());     std::string encoded = base64_encode(data);      std::cout << "Base64 encoded string: " << encoded << std::endl;      return 0; } 

这个示例使用了OpenSSL库中的函数来实现Base64编码。首先定义了一个base64_encode函数来对输入的数据进行Base64编码,然后在main函数中使用示例字符串"Hello, World!"进行编码并输出结果。可以根据实际需求修改输入数据和输出方式。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!