在socket中怎样发多行文本(30分)

  • 主题发起人 主题发起人 zhkh
  • 开始时间 开始时间
Z

zhkh

Unregistered / Unconfirmed
GUEST, unregistred user!
在clientsocket的应用中,如何发送Memo内所有的文本到connection中
并且sendstream、sendbuf如何使用请举例
 
多行文本和单行文本有什么不同吗?
把Memo.Lines.Text当一个字符串发过去就行了,
接收方也当一个字符串处理,你管它是单行还是多行?
只不过字符串中包含几个换行符罢了。
 
我主要是想知道SendStream,SendBuf的使用方法,及传送上百K的内容是否
要用特别的方法。
 
用 Stream 麻,许多对象(包括TSTRING)都可以转换为Stream的
自己看 DEMO
 
cj :收到我的信了吗?有进展吗?
 
试一下编写onkeydown事件的代码.
 
ClientSocket.Socket.SendStream(<Stream>);
ClientSocket.Socket.SendBuf(<array of char>,<size of array>);
注意!一次发送不能超过2KB,否则数据可能丢失。
 
ClientSocket.Socket.SendStream(stream);
ClientSocket.Socket.SendBuf(array of char,size of array);
注意!一次发送不能超过2KB,否则数据可能丢失。
 
SendBuf好象一次能传8K数据,我在局域网里就是这样实现的
好象从没丢过数据
 
最多可传送8k数据,分割开吧
 
发送的时候就一行一行的发送不好吗,有简单有容易看
for i:=0 to memo1.lines.count do
clientsocket1.socket.sendtext(memo1.lines);
这样不行吗???
 
SendBuf不止8K数据,我也在局域网里实现过.
在拨号入企业网时也用过.
 
笨笨的办法,在两个字符串之间加特殊字符,象#,@,%等,另一端写程序读出来就是了。嘿嘿。。。
 
delphi的socket是tcp socket,发送是字节流,
大小随便才对。
 
接受答案了.
 
后退
顶部