public long ReadInt64() { NeedOneByteInBuffer(); long res = 0; if (Pos + 8 <= End) { res = PackUnpack.UnpackInt64BE(Buf, Pos); Pos += 8; } else { for (int i = 0; i < 8; i++) { NeedOneByteInBuffer(); res <<= 8; res += Buf[Pos]; Pos++; } } return(res); }