0
문자열과 길이를 버퍼에서 압축 해제하려고합니다.팩을 파이썬에서 올바른 형식으로 압축을 풉니 다
예는이 버퍼로부터 (4, 'GEGE')를 얻기 위해 : B를 '\ x00부터 \ x04G \ xE9g \ xe9'
사람이 어떻게 할 알고 있나요?
문자열과 길이를 버퍼에서 압축 해제하려고합니다.팩을 파이썬에서 올바른 형식으로 압축을 풉니 다
예는이 버퍼로부터 (4, 'GEGE')를 얻기 위해 : B를 '\ x00부터 \ x04G \ xE9g \ xe9'
사람이 어떻게 할 알고 있나요?
길이 데이터는 빅 엔디안 부호없는 16 비트 정수처럼 보이며 문자열 데이터는 Latin1 인코딩을 사용하는 것처럼 보입니다. 맞습니다, 당신이 이런 식으로 추출 할 수 있습니다 :
from struct import unpack
def extract(buff):
return unpack(b'>H', buff[:2])[0], buff[2:].decode('latin1')
buff = b'\x00\x04G\xE9g\xe9'
print(extract(buff))
출력
(4, 'Gégé')
그것은 (유용한) 답을 수신하면 질문을 삭제하지 마십시오. –