读取一个整型数据 :return:
(self)
| 116 | |
| 117 | @ranges((0x80, 0xd7), ord('I')) |
| 118 | def read_int(self): |
| 119 | """ |
| 120 | 读取一个整型数据 |
| 121 | :return: |
| 122 | """ |
| 123 | value = self.read_byte() |
| 124 | if 0x80 <= value <= 0xbf: |
| 125 | result = value - 0x90 |
| 126 | elif 0xc0 <= value <= 0xcf: |
| 127 | i = (value - 0xc8) << 8 |
| 128 | i |= self.read_byte() |
| 129 | result = i |
| 130 | elif 0xd0 <= value <= 0xd7: |
| 131 | i = (value - 0xd4) << 16 |
| 132 | i |= self.read_byte() << 8 |
| 133 | i |= self.read_byte() |
| 134 | result = i |
| 135 | else: |
| 136 | result = unpack('!i', self.read_bytes(4))[0] |
| 137 | return result |
| 138 | |
| 139 | @ranges((0x5b, 0x5f), ord('D')) |
| 140 | def read_double(self): |
no test coverage detected