繁体   English   中英

在C ++中读取python UUID字节字符串?

[英]Reading a python UUID byte string in C++?

我从uuid.bytes方法创建的python中有一个16字节的字符串,例如:'I \\ x9e | T \\ r \\ xad @ \\ x80 \\ x986m \\ x00 \\ x1c \\ x07z0',例如,一个C ++文件。

有没有办法让我从C ++方面阅读并重建UUID? 由于char = 1个字节,我打算将其读取到16个字符的数组中,但不确定从那里开始。

像这样(未经测试)

char to_hex(int x)
{
  return x < 10 ? x + '0' : (x - 10) + 'A';
}

char bytes[16];
...
std::string uuid;
for (int i = 0; i < 16; ++i)
{
  uuid += to_hex((bytes[i] >> 4) & 0x0F);
  uuid += to_hex(bytes[i] & 0x0F);
}

我会用:

UUID.hex

除非您需要用二进制表示形式。 来回转换没有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM