flex - java 数据传输

来源:互联网 发布:淘宝刷单被降权怎么办 编辑:程序博客网 时间:2024/06/05 22:47
 ==java端写入数据
 SerializationContext serializationContext=new SerializationContext();
 Amf3Output amfOut = new Amf3Output(serializationContext);
 ByteArrayOutputStream outStream = new ByteArrayOutputStream();
 DataOutputStream dataOutStream = new DataOutputStream(outStream);
 amfOut.setOutputStream(dataOutStream);

 //HashMap
   Map map = new HashMap();         
           String[] arr = "1,2,3,4,5".split(",");   
           
           map.put("datas", arr); 
          map.put("name","kinglong"); 
          map.put("age", "金龙工作室"); 
         map.put("domain", "klstudio.com"); 
            
         try {
    amfOut.writeObject(map);
   } catch (IOException e1) {
    e1.printStackTrace();
   }       
  
 byte[] messageBytes = outStream.toByteArray();
 try
 {
 FileOutputStream os;
 OutputStreamWriter ow;
 BufferedWriter out;
 os = new FileOutputStream("D://test.txt");
 ow = new OutputStreamWriter(os);
 out = new BufferedWriter(ow);
 os.write(messageBytes);
 os.flush();
 os.close();
 System.out.println("OK");
 }catch(Exception e)
 {
 System.out.println("error :" + e);
 }
 -------------------------------------------

==flex 端读取数据

<mx:Script>
  <![CDATA[
   import mx.controls.Alert;
   import mx.events.FlexEvent;

   private var loader:URLLoader=new URLLoader();
   
      
   
    private function onComplete(evt:Event):void
    {
     var start:Number=getTimer();
     var byte:ByteArray=loader.data as ByteArray;
     var obj:Object=byte.readObject(); //读取出来的对象
     var end:Number=getTimer();
     Alert.show("耗时:"+(end-start)+"毫秒");
     Alert.show(obj.name+"-"+obj.age+"-");//+obj.arr.length);
    // trace(”耗时:”+(end-start)+”毫秒”)
    // trace(obj.name,obj.age,obj.arr.length)
    }
    
   protected function application1_initializeHandler(event:FlexEvent):void
   {
    loader.load(new URLRequest("test.txt"));
    loader.addEventListener(Event.COMPLETE,onComplete);
    loader.dataFormat=URLLoaderDataFormat.BINARY;
   }

  ]]>
 </mx:Script>