关于MemoryStream的问题,在线等!

yz_oracle 2007-03-01 10:42:58
假设窗口上有 Edit1 , Edit2
Edit1.text := 'abcdefg' ;
我想把Edit1.text的内容读到MemoryStream中,然后再把MemoryStream中的内容写到Edit2中,怎么做!

procedure TForm1.Button1Click(Sender: TObject);
var
MyStream : TMemoryStream ;
str : PChar ;
begin
str := PChar(Trim(Edit1.Text)) ; //读Edit1的内容
MyStream := TMemoryStream.Create ;
MyStream.WriteBuffer(PChar(str)^,Length(str)); //读到MemoryStream中
MyStream.ReadBuffer(buf^,Length(str)-1) ;
Edit2.Text := Char(buf) ;
MyStream.Free ;
end;

上面的代码不行,怎么改?
谢谢哥哥姐姐了
^_^
...全文
159 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
gangjh 2007-03-01
  • 打赏
  • 举报
回复
這麼做.你少了句MyStream.Position := 0 ;
var
MyStream : TMemoryStream ;
str : PChar ;
buf: string ;
l :Integer ;
begin
str := PChar(Trim(Edit1.Text)) ;
MyStream := TMemoryStream.Create ;
l := strlen(str) ;
MyStream.WriteBuffer(PChar(str)^, l);


setlength(buf, l) ;

MyStream.Position := 0 ;
MyStream.ReadBuffer( buf[1] , l ) ;

Edit2.Text := buf ;
MyStream.Free ;

5,391

社区成员

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

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