将格式字符串转换为二进制的简便方法

时间:2013-01-15 19:40:39

标签: c++ byte converter

我很想知道是否有一种简单的方法(即使用clib,stl或stdlib函数)将格式化(编码?)字节字符串转换为字节数组(unsigned chars):

示例,格式化字节字符串: \ x8C \ xB5 {\ x00 \ x00

于: {0x8C,0xB5,0x7B,0x00,0x00}

2 个答案:

答案 0 :(得分:0)

逐字逐句地逐字逐句。如果看到'\\'字符,则检查下一个字符是否为'x',然后取下一个或两个字符(如果它们是十六进制数字)并将它们转换为字节值并添加值到目标向量。任何其他字符将按原样添加到目标。继续,直到字符串结束。

答案 1 :(得分:0)

你要问的是编码的字符串解码为简单的字符数组。

回答你的问题,没有(AFAIK)。

但可以很容易地实现。

看看这个。

http://www.dzone.com/snippets/decode-encoded-query-string-c

确实是您在26行代码中所做的。只有差异a%而不是\ x