在练习java发送邮箱附件时遇到了问题,在action中如果要访问文件,文件的相对路径要怎么写啊,当前的类名是在emailtest包下的HigherEmailer.java,我认为相对路径就是相对这个文件本身而言的位置,所以文件TestPic.jpg的路径我写成了..\\TestPic.jpg,我也去工作空间下看了,,就算是访问的class目录,也没有错啊,但还是报文件找不到异常,不知道为什么,我试了下,绝对路径是可以的

解决方案 »

  1.   

    看了很多提到的都是jsp的相对路径,但是action里访问资源时,到底是访问的哪里?要在action里填放入src的资源的相对路径要怎么填呢?
      

  2.   

    String realPath=this.getClass().getClassLoader().getResource("../../").getPath();
    DataHandler dh = new DataHandler(new FileDataSource(realPath+"/TestPic.jpg")); // 读取本地文件
    终于解决了。不想直接写绝对路径,结果绕了好大一个弯啊,涉及到项目部署到tomcat中,资源的路径会发生改变