java获取当前路径的方法

参考网址:https://www.cnblogs.com/franson-2016/p/5728280.html

面临问题:

    需要在linux系统中run jar文件,运行过程包括文件IO。由于txt文件在windows系统中和在linux中路径不同,所以txt的路径只能用它相对于该project的路径。获取当前路径有如下方法:

  1、利用System.getProperty()函数获取当前路径: 

        System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径 

        

   输出:

应用:

输出:

2. 利用File类提供的方法获取文件路径

    getCanonicalPath( ): 得到相对路径;相对路径:“."就表示当前的文件夹,而”..“则表示当前文件夹的上一级文件夹 ;

    getAbsolutePath( ): 得到绝对路径;绝对路径: 则不管”.”、“..”,返回当前的路径加上你在new File()时设定的路径 ;

    getPath( ): 得到的只是你在new File()时设定的路径 ;

例:当前的路径为 C:/test : 

    (1)File directory = new File("abc"); 
            directory.getCanonicalPath(); //得到的是C:/test/abc 
            directory.getAbsolutePath();    //得到的是C:/test/abc 

            direcotry.getPath();                    //得到的是abc 

    (2)File directory = new File("."); 
            directory.getCanonicalPath(); //得到的是C:/test 
            directory.getAbsolutePath();    //得到的是C:/test/. 

            direcotry.getPath();                    //得到的是. 

    (3)File directory = new File(".."); 
            directory.getCanonicalPath(); //得到的是C:/ 
            directory.getAbsolutePath();    //得到的是C:/test/.. 
            direcotry.getPath();                    //得到的是.. 

你可能感兴趣的:(java获取当前路径的方法)