java代码(需要xsocket 下面有下载):
test.java(主文件)
package test;import org.xsocket.connection.*;public class test { protected static IServer srv = null; public static void main(String[] args) { try{ srv = new Server(8090,new xSocketDataHandler()); srv.run(); }catch(Exception ex){ System.out.println(ex.getMessage()); } } protected static void shutdownServer() { try{ srv.close(); }catch(Exception ex){ System.out.println(ex.getMessage()); } }}
xSocketDataHandler.java文件
package test;import java.io.IOException;import java.nio.BufferUnderflowException;import java.nio.channels.ClosedChannelException;import org.xsocket.MaxReadSizeExceededException;import org.xsocket.connection.IDataHandler;import org.xsocket.connection.INonBlockingConnection;public class xSocketDataHandler implements IDataHandler { @Override public boolean onData(INonBlockingConnection nbc) throws IOException, BufferUnderflowException, ClosedChannelException, MaxReadSizeExceededException { try{ String data = nbc.readStringByDelimiter("\0"); nbc.write(data + "\0"); if(data.equalsIgnoreCase("SHUTDOWN")) { test.shutdownServer(); } }catch(Exception ex){ System.out.println(ex.getMessage()); } return true; }}
as3.0代码
package { import flash.display.Sprite; import flash.net.XMLSocket; import flash.events.DataEvent; import flashx.textLayout.events.DamageEvent; public class mysocket extends Sprite { public function mysocket() { var xmlSocket:XMLSocket = new XMLSocket(); xmlSocket.connect("192.168.0.101",8090); xmlSocket.addEventListener(DataEvent.DATA,onIncomingData); xmlSocket.send("Hello World"); xmlSocket.send("SHUTDOWN"); } function onIncomingData(event:DataEvent):void{ trace("["+event.type+"]"+event.data); } } }