关于内存流的使用!

Linux2001 2002-10-24 08:42:53
我的程序中使用到了内存流,我用SaveToStream的方法,把一个文件保存到pMem中,pMem是一个内存流,我想给这个文件执行加密操作,但是却无法读取这个文件的内容,那么如何进行加密操作,使用pMem.Size大小就是文件的大小,但是pMem.Position指向文件最后如果设置为0,则调试器会弹出来并且CPU指令器弹出来显示内存流指向对象都是????,怎么读取呢,我使用pMem.Read或者是ReadBuffer方法,全部是错误,只能读出一个什么ITEF?这样的东西出来
...全文
49 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Linux2001 2002-10-24
  • 打赏
  • 举报
回复
只有回去实验一下再说了
wzrlover 2002-10-24
  • 打赏
  • 举报
回复
添加流.Postion=0可以从Stream中读取文件内容;
var
c: string;
Stream,
MyStream: TMemoryStream;
begin
Try
MyStream := TMemoryStream.Create;
stream:=TMemoryStream.create;
//读取text.txt保存到Stream流中
MyStream.LoadfromFile('C:\test.txt');
MyStream.SaveToStream(Stream);

stream.Position:=0;
SetLength(c,Stream.size+1); //设置字符的大小
Stream.Read(C[1], Stream.Size); //把文件读入
showmessage(c); //这里就是你的文件内容
finally
MyStream.Free;
Stream.Free;
end;
end;
Linux2001 2002-10-24
  • 打赏
  • 举报
回复
一楼大哥,我用的就是这样的方法,使用ShowMessage字符串为ITEF?,我加载的文件是使用SaveToStream的方法保存到流文件是FoxMail的帮助文件
copy_paste 2002-10-24
  • 打赏
  • 举报
回复
这年头,这问题都能遇到,倒霉到家(我用流从来没出现过),
期待高手
帮你up
Zzzzzz....
zsy_good 2002-10-24
  • 打赏
  • 举报
回复
var
c: string;
MyStream: TMemoryStream;
begin
Try
MyStream := TMemoryStream.Create;
MyStream.LoadfromFile('c:\test.txt');
SetLength(c,MyStream.size); //设置字符的大小
MyStream.Read(C[1], MySteam.size); //把文件读入
showmessage(c); //这里就是你的文件内容
finally
MySteam.Free;
end;

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧