一直都没搞清楚相对路径,
比如FileReader file=new FileReader("123.txt");
程序运行时抛出异常说没找到123这个文件,
我把引号里的改成绝对路径,正常找到,但是总觉得这样很死板,
123我是放在生成class文件的目录下,
那么这里的相对路径该怎么写呢?这个问题困扰很久了,以前引入图片啥的,从来没成功过,估计就是一直没搞清相对路径,哪位知道的说一下,小妹感激不禁

解决方案 »

  1.   

    According to you java source code...
      

  2.   

    如果你用的是eclipe这个文件是在你的工程文件下,相对路径就是文件名本身,如果你是和类放在一起执行的话,我可以给你出个主意,先new一个file然后写点东西,看这个file在哪里,这样你大概就知道了这个文件的相对路径该怎么写了,其实不用这么麻烦的,java里边由一个路径映射的方法,具体我记不清楚了,你可以用它试试!
      

  3.   

    包的平级位置
    比如com.×××
        文件该位于与com平行的目录中
        不应该是class文件一个目录下
      

  4.   

    /123.txt 根目录
    123.txt  当前目录
      

  5.   


    按你的东西,假如Test类和123.txt在你的class文件的目录下,那么输入流就可以用以下方法获取:InputStream inStream = Test.Class.getResourceAsStream(String name);然后就可以继续你的工作啦。
      

  6.   

    补充下:按你的情况,可以写成:
    InputStream inStream = Test.Class.getResourceAsStream(“123.txt”);
      

  7.   

    相对路径可能有问题,各个开发工具可能不一样,具体的不清楚
    可以用new FileReader("123.txt").getAbsolutePath()获取绝对路径,就可以知道相对路径了,
    你可以自己总结下。
      

  8.   

    相对路径就是相对于当前目录的路径。
    绝对路径就是从根目录开始的路径。但是不同的开发工具里,IDE给你指定的路径就不是上面相对路径情况了,要看目录的映射关系。getAbsolutePath就可以得到具体指向哪个目录。