1
String::unpack
을 사용하여 이진 스트림에서 정수 및 double을 압축 해제합니다. 어떻게 비트 스트림에서 하나의 비트를 풀 수 있습니까? 압축을 풀고 단일 비트를 디코딩하는 특정 지시문을 찾을 수 없습니다.Ruby를 사용하여 이진 문자열에서 비트를 풉니 다.
String::unpack
을 사용하여 이진 스트림에서 정수 및 double을 압축 해제합니다. 어떻게 비트 스트림에서 하나의 비트를 풀 수 있습니까? 압축을 풀고 단일 비트를 디코딩하는 특정 지시문을 찾을 수 없습니다.Ruby를 사용하여 이진 문자열에서 비트를 풉니 다.
언팩은 바이트 수준까지 내려갈 수 있습니다. 'C' format을 사용하여 부호없는 바이트를 읽은 다음 비트 마스크를 사용하여 개별 맵을 쿼리 할 수 있습니다.
비트가 스트림의 끝에 있고 'C'지시문을 사용하여 7 비트를 더 읽을 때 위험이 있습니까? –
@aliekens 나는 그렇게 생각하지 않는다. 스트림이 루비로 들어가기 전에 바이트로 구성되어야합니다. 부분 바이트와 같은 것은 없습니다. 데이터가 9 비트이면 2 바이트로 표시되고 나머지는 0으로 채워집니다. – bandi