C# 二进制数据流工具类

在实际的项目开发中,很多地方都会应用的二进制数据,比如客户端服务器的通信、用户数据的存储以及一些游戏数据的存储。所以写了此类以方便进行类的序列化和反序列化操作。


此类包含的大小端的设置,如果只是客户端使用,可以忽略。


类名DataStream


使用方法

1.写数据:

DataStream stream = new DataStream(true);
writer.WriteSInt32(1);
writer.WriteString16("abc");
byte[] bdata = data.ToByteArray();
2.读取数据:

byte[] bdata = new byte[10];
DataStream stream = new DataStream(bdata,true);
int i = datastream.ReadSInt32();
string s = datastream.ReadString16();

支持的数据类型:ushort,uint ,ulong,short,int,long,string;


完整代码:

public class DataStream
{
	private BinaryReader mBinReader;
	private BinaryWriter mBinWriter;
	private MemoryStream mMemStream;
	private bool mBEMode;//big endian mode
	
	public DataStream(bool isBigEndian)
	{
		mMemStream = new MemoryStream();
		InitWithMemoryStream(mMemStream, isBigEndian);
	}
	
	public DataStream(byte[] buffer, bool isBigEndian)
	{
		mMemStream = new M
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值