从socket服务器读数据

从socket服务器读数据

ID:8982148

大小:35.00 KB

页数:5页

时间:2018-04-14

从socket服务器读数据_第1页
从socket服务器读数据_第2页
从socket服务器读数据_第3页
从socket服务器读数据_第4页
从socket服务器读数据_第5页
资源描述:

《从socket服务器读数据》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、从Socket服务器读数据解决方法:   对于Socket实例,先收到socketData事件,然后调用如下两个方法的一个,比如,readByte()或者readInt(),在事件控制器中确定不会去读过去的bytesAvailable.   对于XMLSocket实例,先收到data事件,然后解析从事件控制器内部装载的XML数据.讨论:   从一个socket连接接收的数据依赖于你使用的Socket的类型.socket和XMLSocket都可以从服务器接受到数据,但是它们处于不同重量级的技术.让我们在讨

2、论XMLSocket之前先关注下Socket类.   我都知道socket在Flash中是一个异步的行为.因此,它就不能简单的创建一个Socket连接,然后就立刻尝试去读取数据.read方法不能等到从服务器传过来数据之后在返回.换句话说,你只能在客户端从服务器载入所有数据之后才可以读取数据.在数据可用之前读数据会产生一个错误.   通过socketData事件广播到Socket实例,这样我们就可以知道什么时候数据可以被读取.那么我们要为socketData事件添加一个事件监听器,任何时候只要有新的数据从

3、一个socket服务器发送过来,都会触发事件控制器.在事件处理器的内部我们写入我们要执行的代码去读取和处理收到的数据.   从一个前端服务器读取数据,Socket类为我们提供了许多不同的方法,这些方法依赖于你所读得数据类型.例如,你可以通过readByte()方法读一个byte数据,或者通过一个使用readUnsignedInt()方法去读一个无符号整数.下面这个表列出来能够从服务器读取的数据类型,返回值,和read方法每次读入的字节数.Table:Socketreadmethodsforvarious

4、datatypes方法:返回值类型描述字节数readBoolean():Boolean从Socket读取一个Boolean值.1readByte():int从Socket读取一个byte值.1readDouble():Number从Socket读取一个IEEE754双精度浮点数.8readFloat():Number从Socket读取一个IEEE754单精度浮点数.4readInt():int从Socket读取一个有符号32-bit整数值.4readObject():*从Socket读取一个AMF-en

5、coded对象.nreadShort():int从Socket读取一个有符号16-bit整数值.2readUnsignedByte():uint从Socket读取一个无符号字节.1readUnsignedInt():uint从Socket读取一个无符号32-bit整数4readUnsignedShort():uint从Socket读取一个无符号16-bit整数.2readUTF():String从Socket读取一个一个UTF8字符串.n   有两个额外的方法没有在上面这个表中描述.它们分别是readB

6、ytes()和readUTFBytes().readBytes()方法只可以让socket读数据但不能返回一个值,并且该方法需要3个参数:bytes:   一个flash.util.ByteArray实例读取从socket中收到的数据.offset:   一个uint值,指定从什么位置开始读取socket中收到数据的偏移量.默认值为0.length:   一个uint值,用于指定读取bytes的数量.默认值为0,意思就是说将所有的可用的数据都放入ByteArray中.   另一个readUTFBytes

7、()方法,只需要一个长度参数用于指定UTF-8字节的读入数量,并且该方法会将所有读入的字节码转换成为字符串类型.注意:在从一个Socket读数据之前,首先要判断bytesAvailable的属性.如果你不知道要读入的数据类型是什么就去读数据的话,将会产生一个错误(flash.errors.EOFError).   下面的例子代码连接了一个socket服务器,读取并显示每次从服务器发来的数据.package{importflash.display.Sprite;importflash.events.Pro

8、gressEvent;importflash.net.Socket;publicclassSocketExampleextendsSprite{   privatevarsocket:Socket;   publicfunctionSocketExample(){     socket=newSocket();          //Listenforwhendataisreceivedfromthesocketserver     soc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。