我的一个JAR包,要读取一个ACCESS的数据库。我把ACCESS文件放在JAR包的同级目录下,可是不写绝对路径就提示找不到文件。
用Properties类的getProperties("user.dir")返回的却不是正确的JAR包的路径。
怎么样获得当前目录呢?我是说和JAR包的目录。

解决方案 »

  1.   

    File file = new File(".");
    String path = file.getCanonicalPath() 可得当前路径
      

  2.   

    我的意思是获得当前JAR包的所在目录。
    "."总是获得"C:\Documents and Settings\账户名"这个目录.
      

  3.   

    用下面这个方法,你可以得到一个字符串,里面有 jar 包的全路径。后面的事情应该容易了吧?package test;
    import java.net.URLClassLoader;public class ClassLoaderTest {
        public static void main(String[] args) {
            ClassLoader cl = (URLClassLoader)ClassLoaderTest.class.getClassLoader();
            System.out.println(cl.getResource("test/ClassLoaderTest.class"));
        }
    }
      

  4.   

    呀唉,我真是白痴啊。只要用getResource()找一下包里的图片之类的就可以知道当前目录了嘛。谢了,结贴。