使用字符串流很容易對一個字符串進行十六進制編碼,但是是否可以執行反向操作並使用字符串流解碼結果字符串?使用字符串流解碼一個十六進制編碼的字符串
#include <iostream>
#include <string>
#include <iomanip>
#include <sstream>
int main()
{
std::string test = "hello, world";
std::stringstream ss;
ss << std::hex << std::setfill('0');
for (unsigned ch : test)
ss << std::setw(2) << int(ch);
std::cout << ss.str() << std::endl;
}
我不想直接移位字節或使用舊的c函數,如scanf系列函數。
我相信你還需要在每對中加上0x。 –
@MaciejStachowski不,前綴對於'std :: stoi'是可選的。 –