我通过截图的方式已经吧图片截出来了,并且拿到了ByteArray这个对象,我要怎么把这个二进制数据发送的java端中?//本地保存图片
internal function doSave():void{
//创建 位图图像 对象
var bitmapdata:BitmapData = new BitmapData(chart.width,chart.height,false);
//通过 源对象 进行 绘制
bitmapdata.draw(chart);
//创建 图像编码对象
var jpgencode:JPEGEncoder = new JPEGEncoder();
//绘制后的位图图像 转为 JPEG格式的数据对象
var imgByteArray:ByteArray = jpgencode.encode(bitmapdata);
//保存
//file.save(imgByteArray,"Chart.jpg");
}
我拿到这个数据对象以后我什么上传到java中?

解决方案 »

  1.   

    socket
    或者使用 url请求psot过去都行
      

  2.   

    有没有具体的是想方法?我知道HTTPservice不能用
      

  3.   


    肯定不行。很短的一段字符就能转换出很长的二进制编码,post请求有最大位数限制。
      

  4.   

    不行用最笨的办法,写个文本文档,把二进制流写入文档,然后java读文档并删除文档。
      

  5.   

    要是这样我直接就在flex中,直接把图片保存在本地了 file.save(imgByteArray,"Chart.jpg");
      

  6.   

    要不你在数据库申明一个blob类型的字段,然后把二进制流扔这个字段,java再查询出来处理
      

  7.   

    你说到关键点了,关键是我怎么流到数据库里面?不是的通过java代码?
      

  8.   

    <mx:RemoteObject id="inp" destination="XXXXX" result="resultHandle(event)">
    inp.showData(二进制参数);   showData 为java中方法名,这样Java就可以接收了,具体参考
    blazeds说明,