c++从字符串化字节转换字节数组
C++ cast byte array from stringified bytes
我有一个非常大的字符串,看起来像这样:
std::string tmpString = "0xC7,0x04,0x33,0xC0,0x49,0x74,0x0A,…"
我想将每个字符串化的字节转换回一个字节数组。这种情况的最佳解决方案是什么?
我正在使用vc++
试试这个:
std::string tmpString = "0xC7,0x04,0x33,0xC0,0x49,0x74,0x0A,...";
...
std::vector<BYTE> bytes;
bytes.reserve((tmpString.length() / 5) + 1);
std::istringstream iss(tmpString);
std::string s;
while (std::getline(iss, s, ',')) {
WORD num; // istreamstream does not have an '>>' operator for bytes
std::istringstream(s) >> std::hex >> num;
bytes.push_back(BYTE(num));
}
std::string str = ("0xC7,0x04,0x33,0xC0,0x49,0x74,0x0A");
char *p2str = str.c_str();
std::vector<BYTE> numVect;
char *p2c;
do
int num = strtol(p2str,&p2c,16);
p2str = p2c + 1; // skiping the ,
numVect.push_back(BYTE(num));
while(*p2c);
相关文章:
- 如何在连接器 C++ 中将原始字节转换为字符串
- 将 char[] 数组转换为字节,然后将字节转换为 int,反之亦然
- 如何在 c++ 中将字节转换为 ASCII 十六进制表示形式?
- OPENSSL 将二进制字节转换为 SHA256 C++
- 如何将音频字节转换为样本
- C++ 如何将 char[] 中的多个字节转换为一个整数
- 删除字节转换的char*
- 如何将二进制字节转换为可打印的数值
- 将 MFRC522 UID 十六进制字节转换为可打印的小数
- 用c++将十六进制字符串切碎,并将中的每个字节转换为十进制
- Qt是否有一种将字节转换为int的方法,反之亦然
- UCS-4 到 Solaris 上的多字节转换
- 使用 C++ 将四个字节转换为整数
- 将字节转换为无符号整数的最快方法
- 如何在mac上将多字节转换为宽字符
- 将字节转换为整数
- 在Arduino错误时将4个字节转换为长字节
- 更正从C++到delphi AnsiString的字节转换
- 用C++将4个字节转换为3个字节
- 正在将字节转换为char数组,然后再转换回来