Ближайший аналог Java ByteBuffer в C#?
В настоящее время ищет интерфейс Java и приложения c#. В Java я могу использовать getShort()
, getFloat()
etc, чтобы получить различные типы данных из буфера.
В C# я использую MemoryStream
, но есть только один . Кто-нибудь знает, какой тип данных или даже класс, который будет имитировать эту функциональность?
2 ответов
вы можете обернуть MemoryStream
на BinaryReader
:
using(var reader = new BinaryReader(yourStream)) {
int someInt = reader.ReadInt32();
}
на BinaryReader
можно найти в System.IO
пространство имен.
посмотреть MSDN подробнее о том, какие методы можно использовать. Имейте в виду, что методы следуют шаблону Read + тип CLR. Так что ReadInt32()
для int, ReadUInt16()
для краткости, etc.
Вы ищите BinaryReader
класс, который может читать из любого потока.
вы также можете использовать BitConverter
, который работает непосредственно на байтовых массивах.