请问怎样将String类型变量内容加到TMemoryStream类型变量的前面!(40分)

  • 主题发起人 主题发起人 sh9
  • 开始时间 开始时间
procedure TForm1.Button1Click(Sender: TObject);
var
aa:TMemoryStream;
aaa:String;
begin
aa:=TMemoryStream.Create;
aa.Size:=10;
aaa:='asdfasd';
aa.Read(aa,10);

end;
 
写入:
var L: Integer; MS: TStream; S: string;
begin
MS:=TMemoryStream.Create;
S:='string';
L:=Length(S);
try
MS.WriteBuffer(L, 4); //保存字符串长度
MS.WriteBuffer(S[1], L); //保存字符串内容
MS.... //写入其他信息.
finally
MS.Free;
end;
end;

读出: (MS: TStream);
var L: Integer; S: string;
begin
MS.ReadBuffer(L, 4); //读出字符串长度
SetLength(S, L);
MS.ReadBuffer(S[1], L); //读出字符串内容
MS.... //读出其他信息.
end;
 
请问怎样将两个stream类型变量合并在一起?
 
m1,m2:TMemoryStream;
.
.
.
m1.position := m1.size;
m2.position := 0;
m1.CopyFrom(m2,m2.Size);
 
1, 先把 MemoryStream 往后移 Length(s) ,然后再加。

2, 先得改变 size, 然后合并,

btw: sh0..sh9 都是你吗?这可不太好,你不珍惜你的 id 吗?
 
对不起,我太苯了,挣不到分!
 
不要怪别人不理你,看看你自己能记住自己的帐号么??
说说,shuoshuo,shshsh,sh1,sh2……,sh8,sh9……
该结束的题自己结束吧!!!!!!
 
后退
顶部