加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-15 04:19:11 所属栏目:百科 来源:网络整理
导读:在Delphi中,可以执行以下操作: var ms : TMemoryStream; i : Integer;begin ms := TMemoryStream.Create; i := 1024; ms.Write(@i,SizeOf(Integer)); ms.Free;end; 这会将i的内存内容写入ms. MemoryNet的.Net版本没有这样的功能(托管版本和非托管版本).我知
在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);

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读