2013-08-25 47 views
0

正如我在XMLSocket中所看到的,数据可以完全收集直到结束,另一方面,Socket类按部分读取数据,所以长字符串将被部分串联起来,我想知道是否可以使用Socket类,仍然读取完整的数据,直到最后包actionscript Socket和XMLSocket读取完整数据

private function readResponse():void { 
    var str:String = readUTFBytes(bytesAvailable); 
    response += str; 
    trace2(response); 
} 
private function socketDataHandler(event:ProgressEvent):void { 
    trace2("socketDataHandler: " + event); 
    readResponse(); 
} 

所以正如我在文档的唯一数据处理程序是ProgressEvent已经看到了,但如何处理数据,以获得完整的字符串,而不是部分?,我不想使用XMLSocket,有没有办法?

回答

0

XMLSocket读取内部缓冲区中的数据,当接收到终止空字节时,它解析自从前一个零字节以来接收到的所有XML,或者自从连接建立以来接收到的第一条消息。 您需要打包Socket对象,将消息读取到内部缓冲区并在需要时触发事件。

相关问题