首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

flex中的绝对路径与相对路径的有关问题

2012-02-21 
flex中的绝对路径与相对路径的问题这个问题调试了好久啊 请高手回答我在昨天就遇到在flex中 关于路径的引

flex中的绝对路径与相对路径的问题
这个问题调试了好久啊 请高手回答

 我在昨天就遇到在flex中 关于路径的引用问题 ,一直没有调试成功:

 现在贴出我在引用时的代码:
 文件:test.as:(在目录:flex_src/demo/actionScript/test.as目录下)
 [code=Java][/code]
  public function init():void
  {
var url:URLRequest=new URLRequest("../../xmlfile/3.1.1a.xml");
var loader:URLLoader=new URLLoader();  
loader.addEventListener(Event.COMPLETE, completehandler);  
loader.load(url); 



引用的xml文件:3.1.1a.xml的目录为:flex_src/demo/xmlfile/3.1.1a.xml

在运行时提示一下错误:
Error #2044: 未处理的 ioError:。 text=Error #2032: 流错误。 URL: http://localhost:8080/xmlfile/3.1.1_01a.xml
请问:1 在 URLRequest()里面的地址我该怎么写? 
  2 请解释一下关于flex中的路径的问题 
  3 能否在 URLRequest()里面写本地地址?如果可以 该怎么写?(我在编译参数里面加-use-network=false 后还是不行)

[解决办法]
1>在 URLRequest()里面的地址我该怎么写
里面就是URL就可以,可以是http://localhost:8080/xmlfile/3.1.1_01a.xml这样的绝对路径,也可以是../../xmlfile/3.1.1a.xml这样的相对路径。

2>你在这个里面用的是相对路径,这个相对,应该是指生成的swf与要读取文件的相对。
你现在是以代码test.as所在位置来判断相对路径,可能是不对的。你再重新试试

3>你指的本地地址是什么意思? 就是不是放到web 容器里面运行,在Flex项目下运行,文件放到flex项目下吗?
这样是可以的,如果访问的文件在flex外面,可能会受到安全沙箱的限制而无法访问。
[解决办法]
你的错误信息是什么?
Error #2044: 未处理的 ioError:。 text=Error #2032: 流错误。 URL: http://localhost:8080/xmlfile/3.1.1_01a.xml


你是在flex项目启动的话 应该不会出http://localhost:8080/,会出现windows路径。
你是在通过Tomcat,运行的吧?(test.swf在java项目里面)
如果是这样,把xmlfile/3.1.1a.xml放到java项目里面。比如放到WebContext下xmlfile/3.1.1a.xml
这样的话,URL就是http://localhost:8080/(虚拟目录)/xmlfile/3.1.1a.xml



"我的本地地址是指:假设我在D盘上有一个这样的:D:/testxml/books.xml 该文件在flex项目外面 
不能引用吗? "
由于安全沙箱的限制,是不能引用的

[解决办法]
var url:URLRequest=new URLRequest("../../xmlfile/3.1.1a.xml"); 

你这个事相对于项目的路径
或者
var url:URLRequest=new URLRequest("/项目名/xmlfile/3.1.1a.xml"); 

热点排行