【发布时间】:2015-04-22 14:19:59
【问题描述】:
我要做的是从 Python 结构中获取全长字符串。
这是我的结构:struct.pack('6s','Hello!') 这是'Hello!'。
但是,当我在做struct.unpack('s','Hello!') 时,我得到一个错误:error: unpack requires a string argument of length 1。一种答案是获取输入的长度并将其放在“s”之前,但是在更复杂的情况下,您会获得包含多个字符串的结构。所以我想知道的是如何从一个有很多部分的结构中获取一个字符串。例如,一个结构体包含int, string, unsigned short, string。
Tl;Dr:如何在不知道字符串长度的情况下从具有多个整数的结构中获取完整字符串?
对真实结构的了解更多:
Int, string (known size-是服务器的IP地址(我是服务器)), Short, short, short, string (unknown size-is Username).
【问题讨论】:
-
你需要知道进入结构的字符串的大小。
-
你知道你的字符串是空终止还是类似 - 否则,你需要知道长度...
-
没有空终止或类似的东西