delphi 中SetLength的用法和意思 还有Tmemorystream的使用

来源:百度知道 编辑:UC知道 时间:2024/05/25 06:24:10
我用Tmemorystream类和udp传输文本 可..

procedure TForm1.NMUDP1DataReceived(Sender: TComponent;
NumberBytes: Integer; FromIP: String; Port: Integer);
var
MyStream:Tmemorystream;
TmpStr:string;
begin
MyStream:=TMemoryStream.Create;
Try
NmUdp1.ReadStream(Mystream);
SetLength(TmpStr,NumberBytes);
MyStream.Read(Tmpstr[1],NumberBytes){这而怎么有个Tmpstr[1]是什么意思,这个函数具体怎么用}
Memo1.Lines.Add(FromIp+':'+Tmpstr);
Finally
Mystream.Free;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
mystream:TmemoryStream;
TmpStr:string;
begin
Nmudp1.ReportLevel :=Status_basic;
NMudp1.RemoteHost := edit1.Text;
nmudp1.RemotePort := StrToInt(edit3.Text);
nmudp1.LocalPort := StrToInt(edit3.Text);
TmpStr:=Edit2.Text;
MyStream:=TMemoryStream.Create;
try
MyStream.Write(TmpStr[1],Lengt

这段代码没怎么看,不过这些基本用法还是通用的
setlength(xxx,N);//设置xxx的长度为N
Tmpstr[1]//Tmpstr的第一个字符
Read(Tmpstr[1],NumberBytes)//读取Tmpstr第一个字符开始NumberBytes个字符
同理
write...的原理就是写入指定字符