java flash tcp字节流通信(二)-flash as3客户端
来源:互联网 发布:数据质量分析工具 编辑:程序博客网 时间:2024/06/04 23:18
package
{
import com.commons.utils.Map;
import com.net.tcp.DataCache;
import com.net.tcp.DataContent;
import com.net.tcp.DataHead;
import com.net.tcp.DataPack;
import com.net.tcp.DataType;
import com.net.tcp.NetSocket;
import com.net.tcp.StreamObjectManager;
import com.net.test.TestVO;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.net.Socket;
import flash.utils.ByteArray;
public class NetCommunication extends Sprite
{
private var socket:Socket;
public function NetCommunication()
{
// StreamObjectManager.init();
// var object:Object = new Object();
// object.id = 2323;
// object.name="fefef";
// var map:Map = new Map();
// map.put("ff", 134);
// map.put("xxx", "nfff");
// object.map = map;
// var testVO:TestVO = new TestVO();
// testVO.o = object;
// testVO.i = 100;
// testVO.d = 130.42424;
// var pack:DataPack = new DataPack();
// pack.writeObject(testVO, DataType.TYPE_OBJECT);
// pack.rewind();
// var testVO1:TestVO = pack.readObject();
// trace(testVO1);
StreamObjectManager.init();
socket = new Socket("127.0.0.1", 2345);
socket.addEventListener(Event.CONNECT, connectComplete);
}
public function connectComplete(event:Event):void{
socket.removeEventListener(Event.CONNECT, connectComplete);
socket.addEventListener(ProgressEvent.SOCKET_DATA, receive);
var object:Object = new Object();
object.id = 2323;
object.name="fefef";
var map:Map = new Map();
map.put("ff", 134);
map.put("xxx", "nfff");
object.map = map;
var testVO:TestVO = new TestVO();
testVO.o = object;
testVO.i = 100;
testVO.d = 130.42424;
send(testVO);
}
public function receive(event:Event):void{
var byteArray:ByteArray = new ByteArray();
socket.readInt();
socket.readBytes(byteArray);
byteArray.position = 0;
var content:DataContent = new DataContent();
content.writeBytes(byteArray, 0, byteArray.bytesAvailable);
var pack:DataPack = new DataPack(content);
pack.rewind();
var object:Object = pack.readObject();
trace(object);
}
public function send(object:*):void{
var pack:DataPack = new DataPack();
pack.writeObject(object, DataType.TYPE_OBJECT);
pack.rewind();
socket.writeInt(pack.head.len);
socket.writeBytes(pack.content, 0, pack.content.bytesAvailable);
socket.flush();
}
}
}
{
import com.commons.utils.Map;
import com.net.tcp.DataCache;
import com.net.tcp.DataContent;
import com.net.tcp.DataHead;
import com.net.tcp.DataPack;
import com.net.tcp.DataType;
import com.net.tcp.NetSocket;
import com.net.tcp.StreamObjectManager;
import com.net.test.TestVO;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.net.Socket;
import flash.utils.ByteArray;
public class NetCommunication extends Sprite
{
private var socket:Socket;
public function NetCommunication()
{
// StreamObjectManager.init();
// var object:Object = new Object();
// object.id = 2323;
// object.name="fefef";
// var map:Map = new Map();
// map.put("ff", 134);
// map.put("xxx", "nfff");
// object.map = map;
// var testVO:TestVO = new TestVO();
// testVO.o = object;
// testVO.i = 100;
// testVO.d = 130.42424;
// var pack:DataPack = new DataPack();
// pack.writeObject(testVO, DataType.TYPE_OBJECT);
// pack.rewind();
// var testVO1:TestVO = pack.readObject();
// trace(testVO1);
StreamObjectManager.init();
socket = new Socket("127.0.0.1", 2345);
socket.addEventListener(Event.CONNECT, connectComplete);
}
public function connectComplete(event:Event):void{
socket.removeEventListener(Event.CONNECT, connectComplete);
socket.addEventListener(ProgressEvent.SOCKET_DATA, receive);
var object:Object = new Object();
object.id = 2323;
object.name="fefef";
var map:Map = new Map();
map.put("ff", 134);
map.put("xxx", "nfff");
object.map = map;
var testVO:TestVO = new TestVO();
testVO.o = object;
testVO.i = 100;
testVO.d = 130.42424;
send(testVO);
}
public function receive(event:Event):void{
var byteArray:ByteArray = new ByteArray();
socket.readInt();
socket.readBytes(byteArray);
byteArray.position = 0;
var content:DataContent = new DataContent();
content.writeBytes(byteArray, 0, byteArray.bytesAvailable);
var pack:DataPack = new DataPack(content);
pack.rewind();
var object:Object = pack.readObject();
trace(object);
}
public function send(object:*):void{
var pack:DataPack = new DataPack();
pack.writeObject(object, DataType.TYPE_OBJECT);
pack.rewind();
socket.writeInt(pack.head.len);
socket.writeBytes(pack.content, 0, pack.content.bytesAvailable);
socket.flush();
}
}
}
- java flash tcp字节流通信(二)-flash as3客户端
- java flash tcp字节流通信(四)-flash as3 客户端(粘包/半包处理)
- java flash tcp字节流通信(二)-java 服务端
- java flash tcp字节流通信(一)-flash as3 协议(1)
- java flash tcp字节流通信(一)-flash as3 协议(2)
- java flash tcp字节流通信(一)-flash as3 协议(3)
- java flash tcp字节流通信(一)-flash as3 协议(4)
- java flash tcp字节流通信(一)-flash as3 协议(5)
- java flash tcp字节流通信(四)-flash as3 粘包/半包处理器(数据缓存)
- java flash tcp字节流通信(三)-java StreamObject as3 生成器
- java flash tcp字节流通信(一)-java 协议(1)
- java flash tcp字节流通信(一)-java 协议(3)
- java flash tcp字节流通信(一)-java 协议(4)
- java flash tcp字节流通信(一)-java 协议(5)
- java flash tcp字节流通信(一)-java 协议(2)
- java flash tcp字节流通信(一)-java 协议(6)
- java flash tcp字节流通信(三)-java StreamObject方法生成器
- java flash tcp字节流通信(四)-java 粘包/半包处理器(数据缓存)
- swprintf和sprintf的使用
- java flash tcp字节流通信(二)-java 服务端
- video4linux(v4l)使用摄像头的实例基础教程与体会
- 理解JavaScript的caller,callee,call,apply
- [置顶] Image Tips for Windows Phone 7
- java flash tcp字节流通信(二)-flash as3客户端
- C++ Primer 点点滴滴 Chater1
- JavaScript修改样式(style)
- Java,指定文字列,可以按照指定的文字数多行显示
- mysql中创建视图作用已经如何创建视图
- Sencha Touch 2 快速入门系列(三)-- 组件之表格(Forms)
- java中对日期的加减操作
- 判断某棵二叉树是否二叉排序树
- android Binder工作流程