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;
}