加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex 与 Java 上传ByteArray图片数据

发布时间:2020-12-15 01:04:21 所属栏目:百科 来源:网络整理
导读:? Flex 端的上传代码: ? ?xml version="1.0" encoding="utf-8"? s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" ????? xmlns:s="library://ns.adobe.com/flex/spark" ????? xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight=
?

Flex 端的上传代码:

?

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
????? xmlns:s="library://ns.adobe.com/flex/spark"
????? xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
?<fx:Declarations>
??<!-- Place non-visual elements (e.g.,services,value objects) here -->
?</fx:Declarations>
?<fx:Script>
??<![CDATA[
???import com.zxt.basic.wfdesign.util.ChartExport;
???
???import mx.controls.Alert;
???
???public function exportImg():void{
????var urlRequest:URLRequest = new URLRequest("http://localhost:8080/workflow14/saveImage.jsp");
????urlRequest.data = transByteArray(myPanel);//需要上传的数据
????urlRequest.contentType = "application/octet-stream";
????urlRequest.method =? URLRequestMethod.POST;
????var urlLoader:URLLoader = new URLLoader();
????urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
????urlLoader.addEventListener(Event.COMPLETE,urlLoader_CompleteHandler);
????urlLoader.load(urlRequest);?
????
???}
???
???public function urlLoader_CompleteHandler(evt:Event):void{
????Alert.show("保存成功!");
?????
???}
??

?

? /**
? * 返回图片的字节流
? */
? public static function transByteArray(displayObject:DisplayObject):ByteArray{?
?? file.addEventListener(Event.COMPLETE,uploadJpgSucc);
?? var bitmapData:BitmapData = new BitmapData(displayObject.width,displayObject.height);
?? bitmapData.draw(displayObject,new Matrix());??
?? var jpg:JPEGEncoder = new JPEGEncoder();??
?? var ba:ByteArray = jpg.encode(bitmapData);??
?? return ba;
? }?
???
???
??]]>
?</fx:Script>
?
?
?<s:Panel id="myPanel" width="584" height="261">
??
??<s:Button x="156" y="104" label="导出图片" click="exportImg();"/>
?</s:Panel>

?
</s:Application>

?

?

Java 端的接收代码:

?

??String filePath = "c:/test.png";
??????? InputStream inputStream = request.getInputStream();
??????? FileOutputStream outputStream = new FileOutputStream(new File(filePath));
??????
??int formlength = request.getContentLength();
??byte[] formcontent = new byte[formlength];
??int totalread = 0;
??int nowread = 0;
??while (totalread < formlength) {
???nowread = inputStream.read(formcontent,totalread,formlength);
???totalread += nowread;
??}

??????? outputStream.write(formcontent); ??????? outputStream.flush(); ??????? outputStream.close(); ??????? inputStream.close();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读