我的套接字有问题。
如果我使用 TClientSocket 发送两行以上的文本,则服务器会收到一行而不是两行。

客户部分:

ClientSocket1.Socket.SendText(Edit1.Text);//Text is 'Line1'
ClientSocket1.Socket.SendText(Edit2.Text);//Text is 'Line2'

服务器部分:
var
s: String;
begin
s := Socket.ReceiveText;
Memo1.Lines.Add(S);

Memo1创建的行是“Line1Line2”
为什么?
对不起我的英语不好!

最佳答案

SendText不发送CRLF。如果您需要发送新行,则必须明确地执行以下操作:

ClientSocket1.Socket.SendText(Edit1.Text + #13#10);
ClientSocket1.Socket.SendText(Edit2.Text + #13#10);

10-05 22:26