I am trying to format a byte array in C#, by porting a code from Java. In Java, the methods "buf.putInt(value);", buf.putShort, buf.putDouble, (and so forth) are used. However I don't know how to port this to C#. I have tried the MemoryStream class, but there is no method to put a specific type at the end of the byte array.
Question: What is the equivalent of Java's "ByteBuffer.putType(value)" in C#? Thanks!
You can use a BinaryWriter and your MemoryStream:
MemoryStream stream = new MemoryStream();
using (BinaryWriter writer = new BinaryWriter(stream))
{
writer.Write(myByte);
writer.Write(myInt32);
writer.Write("Hello");
}
byte[] bytes = stream.ToArray();
Try the BinaryWriter
class:
using (var binaryWriter = new BinaryWriter(...))
{
binaryWriter.Write(323);
binaryWriter.Write(3487d);
binaryWriter.Write("Hello");
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With