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

flex中获取项目的路径

发布时间:2020-12-15 04:57:42 所属栏目:百科 来源:网络整理
导读:先列三段代码出来吧 private function downLoadFile(event:MouseEvent):void{ if(sqmReportExecuteRecord==null || sqmReportExecuteRecord.filePath==null){ Alert.show("文件还未生成!"); return; } var path:String = sqmReportExecuteRecord.filePath.sp

先列三段代码出来吧
private function downLoadFile(event:MouseEvent):void{
if(sqmReportExecuteRecord==null || sqmReportExecuteRecord.filePath==null){
Alert.show("文件还未生成!");
return;
}
var path:String = sqmReportExecuteRecord.filePath.split("").join("/");
var host:String= getParentUrl();
trace("path--------------"+path);
trace("host--------------"+host);
var request:URLRequest = new URLRequest();
request.url=host+"/"+path;
configureListeners(filedown);
filedown.download(request);
}

public static function getParentUrl():String
{
var tb:IBrowserManager=BrowserManager.getInstance();
tb.init();
var o:Object = URLUtil.stringToObject(tb.fragment);
var url:String=tb.url;
var serverport:String = URLUtil.getServerNameWithPort(url);
var protocol:String = URLUtil.getProtocol(url);
var proName:String=getProjectName(url);
return protocol+"://"+serverport+"/"+proName;
}

public static function getProjectName(url:String):String{
var first:int = url.indexOf("/") + 2;
var start:int = url.indexOf("/",first);
var lenght:int=url.indexOf("/",start+1);
var projectName:String=url.substring(start+1,lenght);
return projectName;

}

大家应该看出来了,这主要是关于flex下载的部分关键代码,这里的host就是http://localhost:8080/test类似这样的项目路径名,我觉得这个挺有用的,所以在这里记录下,path就是服务器上的文件的相对路径,这样如果文件在服务器上的话,下载地址就很容易拼接起来。如果大家还有什么好的办法也可以留言,互相学习。

(编辑:李大同)

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

    推荐文章
      热点阅读