首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

关于MyEclipse下面的相对路径有关问题

2011-12-31 
关于MyEclipse下面的相对路径问题我的src 下面有个servlet :package com.test.servlet在又在外面建了个文

关于MyEclipse下面的相对路径问题
我的src 下面有个servlet : package com.test.servlet;
在又在外面建了个文件夹(不是在src和webroot下面):powerpoint
在powerpoint里面放了个a.ppt
servlet路径:src/com/test/servlet/a.java;
ppt路径:powerpoint/a.ppt;
我在servlet里面要调用ppt,问题在servlet里面a.ppt的相对路径是什么?
谢谢!

[解决办法]
你既然提到了servlet,那你的工程一定是web工程,
web工程是部署在服务器上的,假定你的工程名叫demo
那么在servlet中你能获得的路径就是相对于/demo下的
所有路径。你的ppt如果不在这个工程中,而又要对其进行
IO操作,没有绝对路径是不行的。一般都会把工程中要用
的文件放在WebRoot或WebContent也就是web应用的根目录
或其子目录下,并用相对路径访问。
[解决办法]
ppt路径:powerpoint/a.ppt 这个加入到WEB项目中来.
再访问就简单多了.

楼上说的太对了,参考!
[解决办法]
<%=path%>/...
[解决办法]
用绝对路径把,
你powerpoint下的a.ppt又发布不到Tomcat下的,
因为你的a.ppt文件没在webroot下。。。。

[解决办法]
up
[解决办法]
up up!
[解决办法]
帮顶
[解决办法]
检查下 服务器上你的工程中 有没有你的这个文件。 如果有的话 应该可以得到的
[解决办法]
学习学习
[解决办法]
路径有绝对和相对的路径之分,一般都是用的相对路径,便于软件的移植
[解决办法]
楼主,可不可以把你更新后的文件路径再详细说下啊
[解决办法]

探讨
引用:
用绝对路径把,
你powerpoint下的a.ppt又发布不到Tomcat下的,
因为你的a.ppt文件没在webroot下。。。。

我现在已经把在webroot下建了文件夹,并把a.ppt放到了该文件夹里面
ppt=new File("PowerPoint/a.ppt");
这样不行。

[解决办法]
如果你的路径是 WebRoot/PowerPoint/a.ppt

你可以试试 ppt=new File(request.getRealPath()+"/PowerPoint/a.ppt");

好像是它,

反正是用realpath得到站点发布后在服务器上的绝对路径后就可以建File对象了
[解决办法]
hao
[解决办法]
学习学习
[解决办法]
<%=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath()+"/ppt/a.jsp" %>
[解决办法]
这么麻烦??
把a.ppt所在文件夹加到classpath中,读起来就很方便了
[解决办法]

[解决办法]
探讨
你既然提到了servlet,那你的工程一定是web工程,
web工程是部署在服务器上的,假定你的工程名叫demo
那么在servlet中你能获得的路径就是相对于/demo下的
所有路径。你的ppt如果不在这个工程中,而又要对其进行
IO操作,没有绝对路径是不行的。一般都会把工程中要用
的文件放在WebRoot或WebContent也就是web应用的根目录
或其子目录下,并用相对路径访问。

[解决办法]
没有这么使用过!肯定要在项目下建立放置文件的目录了!然后才能使用相对路径!
不然就只能使用绝对路径了!
[解决办法]
request.getRealPath("/") + "()+"PowerPoint\\a.ppt"; 
这样写就可以啦!!
给我加分啊!
------解决方案--------------------


request.getRealPath("/") + "()+"PowerPoint\\a.ppt"; 
这样写就可以啦!!
给我加分啊!
[解决办法]
request.getRealPath("/") + "()+"PowerPoint\\a.ppt"; 

这样写就可以啦!这样是取的相对路径,移植时也不用改的!
给我加分啊!
[解决办法]
部署好后看路径有没有你要的文件不就得了。
[解决办法]
学习了,为了维护方便,还是用相对路径好,调用时是能找到的。
[解决办法]

探讨
request.getRealPath("/") + "()+"PowerPoint\\a.ppt";

这样写就可以啦!这样是取的相对路径,移植时也不用改的!
给我加分啊!

[解决办法]

[解决办法]
学习
[解决办法]
学习!
[解决办法]
学习
[解决办法]

String path=servlet.getServletContext().getRealPath("/"+"PowerPoint\\a.ppt");
ppt=new File(path); 

试试可以吗 我记得以前的时候我是这么写的
[解决办法]
o 很复杂啊 学习中哦 呵呵
[解决办法]
up!
[解决办法]
String path=servlet.getServletContext().getRealPath("/"+"PowerPoint\\a.ppt"); 
这样应该可以。。。
[解决办法]
ppt=new File(this.getClass().getClassLoader().getResource("../").getPath()+ "PowerPoint/a.ppt")
[解决办法]
ppt=new File("/工程名称/PowerPoint/a.ppt"); 
加上自己的工程名称应该是可以用的
[解决办法]
高手呀
[解决办法]
已经有LS的说过了,request.getRealPath("/")获取相对路径,再加你的存放ppt的路径就可以了!
[解决办法]
你可以tomcat中配置一个虚拟路径:在server.xml文件<host>下加入<Context path="/powerpoint" docBase="E:\powerpoint" crossContext="true" reloadable="true"/>;
然后现servlet中调用this.getServletContext().getContext("/powerpoint").getRealPath("/")(绝对路径);
直接用http://localhost:8080/powerpoint/a.ppt(相对路径)。
[解决办法]
2楼说的很对,你要是不把ppt加入到工程中来的话,访问的时候就得绝对路径了。
[解决办法]
楼主试试这样,看行不?ppt=new File("../PowerPoint/a.ppt");
[解决办法]
探讨
楼主试试这样,看行不?ppt=new File("../PowerPoint/a.ppt");

[解决办法]
没看明白。
[解决办法]
学习中,谢谢
[解决办法]
xuexi...
------解决方案--------------------


探讨
你既然提到了servlet,那你的工程一定是web工程,
web工程是部署在服务器上的,假定你的工程名叫demo
那么在servlet中你能获得的路径就是相对于/demo下的
所有路径。你的ppt如果不在这个工程中,而又要对其进行
IO操作,没有绝对路径是不行的。一般都会把工程中要用
的文件放在WebRoot或WebContent也就是web应用的根目录
或其子目录下,并用相对路径访问。

[解决办法]
来学习来的,,,,
[解决办法]
up
[解决办法]
探讨
用绝对路径把,
你powerpoint下的a.ppt又发布不到Tomcat下的,
因为你的a.ppt文件没在webroot下。。。。

[解决办法]
这样子就行了
String path=request.getRealPath("PowerPoint");
FileReader fr=new FileReader(path + "\\a.ppt");
[解决办法]
楼上说的太对了,参考!
[解决办法]
学习学习

热点排行