MemoryStream: зачем преобразовывать в байт после readByte

В этом примере из MS вы заметите, что после того, как мы прочитали байт из потока памяти, он переходит в int который затем должен быть преобразован в байт. Мне кажется странным, что функция вроде .ReadByte () вообще не возвращает байт. Есть ли причина, по которой М.С. так поступил?

// Read the remaining bytes, byte by byte.
while(count < memStream.Length)
{
    byteArray[count++] =
        Convert.ToByte(memStream.ReadByte());
}

- подумалось мне. Возможно, дело в использовании. Возможно, ReadByte () часто используется для извлечения коротких длин, которые потребляются при извлечении через множество длин

int length=ms.ReadByte();
ms.Read(buf,0,lenth);

, т.е. можно использовать длину без гипса. Это достаточно веская причина?

13
задан ckittel 19 August 2011 в 20:23
поделиться