Java ByteBuffer最接近C#中的对应物?

时间:2014-02-23 19:12:54

标签: c# memorystream bytebuffer

目前正在寻找Java和C#应用程序的接口。在Java中,我可以使用getShort()getFloat()等来从缓冲区中获取各种不同的数据类型。

在C#中我使用MemoryStream,但只有一个get()函数。有人知道数据类型甚至是模仿这个功能的类吗?

2 个答案:

答案 0 :(得分:3)

您正在寻找可以从任何流中读取的BinaryReader类。

您也可以使用BitConverter,它直接在字节数组上运行。

答案 1 :(得分:3)

您可以将MemoryStream包裹在BinaryReader

using(var reader = new BinaryReader(yourStream)) {
   int someInt = reader.ReadInt32();  
}

可以在BinaryReader命名空间中找到System.IO

有关可以使用的方法的详细信息,请参阅MSDN。请记住,这些方法遵循Read + CLR类型的模式。所以ReadInt32()代表int,ReadUInt16()简称等等。