Q qqnm Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-26 #1 使用Indy的IdTCPClient时,使用Readln函数只能接收服务器端返回的有终结符的字符串,要是服务器端返回的信息中没有终结符而且返回的信息的长度不固定将如何接收?
Q qqnm Unregistered / Unconfirmed GUEST, unregistred user! 2005-05-26 #2 使用Indy的IdTCPClient时,使用Readln函数只能接收服务器端返回的有终结符的字符串,要是服务器端返回的信息中没有终结符而且返回的信息的长度不固定将如何接收?
风 风卷残月 Unregistered / Unconfirmed GUEST, unregistred user! 2005-07-08 #3 楼主是想实现什么操作呢, 传文件这些都可以传指定长度搞定的,不过要注意文件结束部分的长度, 说下想干嘛,是否有其它行的通的方法
T tswhq Unregistered / Unconfirmed GUEST, unregistred user! 2005-07-26 #7 建议你用IDUdpServer,他即可以发送也可以接收 接收时触发 procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream; ABinding: TIdSocketHandle); begin AData 接收到的数据流 AData.Size 数据长度 end;
建议你用IDUdpServer,他即可以发送也可以接收 接收时触发 procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream; ABinding: TIdSocketHandle); begin AData 接收到的数据流 AData.Size 数据长度 end;
H hzxhzx123 Unregistered / Unconfirmed GUEST, unregistred user! 2005-08-10 #8 var Size:integer; 1、读取idTcpClient收到数据的大小:Size;=IdTCPClient.ReadFromStack(False, -1, False); 参数是否引发异常和超时毫秒数,设定为-1为一直读取到有数据或断开。 2、读取idTcpClient收到的信息 AThread.Connection.ReadBuffer(P^,Size); 或AThread.Connection.ReadStream(MmStream,Size);
var Size:integer; 1、读取idTcpClient收到数据的大小:Size;=IdTCPClient.ReadFromStack(False, -1, False); 参数是否引发异常和超时毫秒数,设定为-1为一直读取到有数据或断开。 2、读取idTcpClient收到的信息 AThread.Connection.ReadBuffer(P^,Size); 或AThread.Connection.ReadStream(MmStream,Size);
L loadme Unregistered / Unconfirmed GUEST, unregistred user! 2005-08-23 #9 这个时候用CurrentReadBuffer很方便的, 不过默认情况下CurrentReadBuffer一次只能读8k数据,CurrentReadBuffer读的是缓冲区的数据 s:=CurrentReadBuffer; while s<>'' do begin recvstr:=recvstr+s; s:=CurrentReadBuffer; end; 最后,recvstr就是我们要从服务器端得到的数据
这个时候用CurrentReadBuffer很方便的, 不过默认情况下CurrentReadBuffer一次只能读8k数据,CurrentReadBuffer读的是缓冲区的数据 s:=CurrentReadBuffer; while s<>'' do begin recvstr:=recvstr+s; s:=CurrentReadBuffer; end; 最后,recvstr就是我们要从服务器端得到的数据