base64字符串到十六进制字符串

时间:2011-01-13 13:14:17

标签: c++ base64

我如何从base64字符串转换为hexa字符串(我在ubuntu-c ++代码中工作)。我的六进制字符串我想像0x0c ....等等。需要帮忙。有人可以给我一个exaple吗?Thx!

1 个答案:

答案 0 :(得分:-1)

使用常见(但不是标准)功能的快速解决方案:

std::string input = MY_ENCODED_STRING;
unsigned long decoded_value = strtol(input.c_str(), NULL, 64);
char buffer[100] = {0};
std::string output = itoa(decoded_value, buffer, 16);

boost::lexical_cast可能能够提供更优雅的解决方案(但不确定该解决方案)。