首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

关于Stream的简单有关问题,下面几个函数,改成C#应该如何写呢?多谢

2012-03-18 
关于Stream的简单问题,下面几个函数,改成C#应该怎么写呢?谢谢Delphi(Pascal) codeprocedure info.LoadFrom

关于Stream的简单问题,下面几个函数,改成C#应该怎么写呢?谢谢

Delphi(Pascal) code
procedure info.LoadFromFile(const FileName: string)var  MS:TMemoryStream;begin  MS := TMemoryStream.Create;  try    MS.LoadFromFile(FileName);    LoadFromStream(MS, IsShallow);  finally    MS.Free;  end;end;//==============================================================================procedure info.LoadFromStream(Stream: TStream; IsShallow: Boolean = False);begin  Stream.ReadBuffer(ID,          SizeOf(Smallint));  Stream.ReadBuffer(companyID,     SizeOf(Smallint));    Stream.ReadBuffer(Type,   SizeOf(Smallint));    Stream.ReadBuffer(UserID,          SizeOf(Smallint));  Stream.ReadBuffer(UpdateTime,      SizeOf(TDateTime));end;//==============================================================================procedure info.SaveToFile(const FileName: string);var  MS:TMemoryStream;begin  MS := TMemoryStream.Create;  try    SaveToStream(MS, IsShallow);    MS.SaveToFile(FileName);  finally    MS.Free;  end;end;//==============================================================================procedure info.SaveToStream(Stream: TStream);begin  Stream.WriteBuffer(ID,          SizeOf(Smallint));  Stream.WriteBuffer(companyID,     SizeOf(Smallint));  Stream.WriteBuffer(Type,   SizeOf(Smallint));  Stream.ReadBuffer(ImeMode,     SizeOf(Smallint));  Stream.WriteBuffer(UserID,          SizeOf(Smallint));  Stream.WriteBuffer(UpdateTime,      SizeOf(TDateTime));end;


[解决办法]
byte [] ReadBuffer=new byte[255];
byte [] WriteBuffer = new byte[255];
FileStream fread = new FileStream("d:\\test.txt",FileMode.Open,FileAccess.Read);

fread.Read(ReadBuffer,0,4);
fread.Close();

Array.Copy(ReadBuffer, WriteBuffer,4);
FileStream fwrite = new FileStream("d:\\test.txt", FileMode.Open, FileAccess.Write);
fwrite.Write(WriteBuffer, 0, 4);
fwrite.Flush();
fwrite.Close();
基本操作都在这里了,看着改吧
至于各种类型转byte数组,可以参看BitConverter.GetBytes或者问度娘

热点排行