문제

Currently looking to interface a Java and a C# application. In Java I can use getShort(), getFloat() etc, to get various different data types from the buffer.

In C# I am using a MemoryStream, but there is only a single get() function. Does anybody know of a datatype or even a class that would mimic this functionality?

도움이 되었습니까?

해결책

You can wrap your MemoryStream in a BinaryReader:

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

The BinaryReader can be found in the System.IO namespace.

See MSDN for details on which methods you can use. Keep in mind that the methods follow the pattern of Read + the CLR type. So ReadInt32() for int, ReadUInt16() for short, etc.

다른 팁

You're looking for the BinaryReader class, which can read from any stream.

You can also use BitConverter, which operates directly on byte arrays.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top