mfc 如何获取字符串中的16进制数据,如字符串“0x123F”或"123F",获取16进制数据0x123F
这种算法只能针对特殊的格式字符串吧,不能做到万能的算法。
你这种需求你肯定知道字符串的大致格式,那么你就只有根据你的需求来匹配16进制的。
比如你可以搜索0x开头的,然后在后面继续匹配。
先读取字符串,然后根据你的格式要求,对应的转换为对应的进制,如stol()函数
使用std::stringstream类
CString csNumber("0x123F");
std::string strNumber(csNumber.GetString());
std::stringstream iss(strNumber);
int iNumber = 0x0;
iss>>std::hex>>iNumber;
数字转换成16进制字符
int iNumber = 0x123F;
std::stringstream oss;
oss<<"0x"<<std::hex<<iNumber;
std::string strNumber = oss.str();