在C#中将任意类型实例写入MemoryStream

前端之家收集整理的这篇文章主要介绍了在C#中将任意类型实例写入MemoryStream前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在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上使用 @L_301_0@:
MemoryStream memoryStream = new MemoryStream(); 
BinaryWriter writer = new BinaryWriter(memoryStream);
writer.Write((int)123);

注意:不要忘记在实际代码中处理流和编写器/阅读器,即使用.

猜你在找的C#相关文章