delphi怎样用TMemoryStream将文件以十六进制方式写入byte数组和写出?
文件为abc.dat(Delphi工程根目录里),大小固定为3,286字节,用TMemoryStream,按下两个按钮后,一个将文件内容以十六进制写进byte数组buf[...
文件为abc.dat(Delphi工程根目录里),大小固定为3,286 字节,用TMemoryStream,按下两个按钮后,一个将文件内容以十六进制写进byte数组buf[0..3286],另一个将buf数组按顺序再写入abc.dat,写完后仍为3,286 字节,大概怎么写?
展开
1个回答
展开全部
var
Mem: TMemoryStream;
buf:array[0..3285] of Byte; // 下界为0所以减1
begin
Mem := TMemoryStream.Create;
Mem.LoadFromFile('abc.dat');
// 读入处理
FillChar(buf, SizeOf(buf), 0);
Mem.Position := 0;
Mem.Read(buf, SizeOf(buf));
// 写入
Mem.Clear;
Mem.Position := 0;
Mem.Write(buf, SizeOf(buf));
Mem.SaveToFile('abc.dat');
Mem.free;
end;
我放到一起了,大概这样,你应该一看就会是白的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询