喂,我有一个 List[Byte]
这是为了代表一个国家 List[String]
.
这 List[Byte]
的前四个元素可以转换为 Int32
. 这 Int
前四个元素后面的字符串长度。
然后循环直到没有字符串可读取。
我写了一个简单的 Python
代码,但仍希望以功能性方式执行此操作。并且更喜欢使用 Scala
.
这是我的密码。
def _parse_type_string(raw: bytes):
length = len(raw)
result = []
index = 0
while index + 4 > length:
read_length = int.from_bytes(raw[index: index + 4], 'little')
if index + 4 + read_length > length:
break
content = raw[index + 4: index + 4 + read_length].decode('ascii')
result.append(content)
index = index + 4 + read_length
1条答案
按热度按时间nwwlzxa71#
我很想
unfold()
原始字节的列表。