在Delphi中,可以执行以下操作:
var ms : TMemoryStream; i : Integer; begin ms := TMemoryStream.Create; i := 1024; ms.Write(@i,SizeOf(Integer)); ms.Free; end;
这会将i的内存内容写入ms.
MemoryNet的.Net版本没有这样的功能(托管版本和非托管版本).我知道.Net在这方面与Delphi的原理不同.
如何在C#中做到这一点?我对“最佳实践”和最快的方法感兴趣.
解决方法
尝试在MemoryStream上使用
BinaryWriter:
MemoryStream memoryStream = new MemoryStream(); BinaryWriter writer = new BinaryWriter(memoryStream); writer.Write((int)123);
注意:不要忘记在实际代码中处理流和编写器/阅读器,即使用.