private byte[] ReadStringBytes() { var sizeBytes = _io.ReadBytes(IntSizeX2); var totalSize = ByteArrayConverter.ByteArrayToInt(sizeBytes); // Use offset of int size to read real size var stringSize = ByteArrayConverter.ByteArrayToInt(sizeBytes, OdbType.Integer.Size); var bytes = ReadBytes(stringSize); // Reads extra bytes ReadBytes(totalSize - stringSize); var bytes2 = new byte[stringSize + IntSizeX2]; for (var i = 0; i < IntSizeX2; i++) { bytes2[i] = sizeBytes[i]; } for (var i = 0; i < bytes.Length; i++) { bytes2[i + 8] = bytes[i]; } return(bytes2); }
public int ReadInt() { return(ByteArrayConverter.ByteArrayToInt(ReadIntBytes())); }