本文目录一览:
java中获取文件路径的几种方式
获取当前类的所在工程路径;
如果不加“/”
File f = new File(this.getClass().getResource("").getPath());
System.out.println(f);
结果:C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin\com\test
获取当前类的绝对路径;第二种:File directory = new File("");//参数为空
String courseFile = directory.getCanonicalPath();
System.out.println(courseFile);
结果:C:\Documents and Settings\Administrator\workspace\projectName
获取当前类的所在工程路径;第三种:URL xmlpath = this.getClass().getClassLoader().getResource("selected.txt");
System.out.println(xmlpath);
结果:file:/C:/Documents%20and%20Settings/Administrator/workspace/projectName/bin/selected.txt
获取当前工程src目录下selected.txt
文件的路径第四种:System.out.println(System.getProperty("user.dir"));
结果:C:\Documents and Settings\Administrator\workspace\projectName
获取当前工程路径第五种:System.out.println( System.getProperty("java.class.path"));
结果:C:\Documents and Settings\Administrator\workspace\projectName\bin获取当前工程路径
在java项目中如何获取某个文件的路径
File
类有两个常用方法可以得到文件路径一个是:getCanonicalPath()
,另一个是:getAbsolutePath()
,可以通过File
类的实例调用这两个方法例如file.getAbsolutePath()
其中file
是File
的实例对象。下面是一个具体例子:
public class PathTest
{
public static void main(String[] args)
{
File file = new File(".\\src\\baidu");
System.out.println(file.getAbsolutePath());
try
{
System.out.println(file.getCanonicalPath());
} catch (IOException e)
{
e.printStackTrace();
}
}
}
getAbsolutePath()
和getCanonicalPath()
的不同之处在于,getCanonicalPath()
得到的是一个规范的路径,而getAbsolutePath()
是用构造File
对象的路径+当前工作目录。例如在上面的例子中.
(点号)代表当前目录。getCanonicalPath()
就会把它解析为当前目录,但是getAbsolutePath()
会把它解析成为目录名字(目录名字是点号)。
下面是上面程序在我电脑上的输出:
G:\xhuoj\konw\.\src\baidu
G:\xhuoj\konw\src\baidu
java怎样获取当前目录路径
很多朋友都想知道java如何获取当前目录路径?下面就一起来了解一下吧~
- 利用
System.getProperty()
函数获取当前路径:
System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径
- 使用
File
提供的函数获取当前路径:
File directory = new File("");//设定为当前文件夹
try {
System.out.println(directory.getCanonicalPath());//获取标准的路径
System.out.println(directory.getAbsolutePath());//获取绝对路径
} catch (Exception e) {}
File.getCanonicalPath()
和File.getAbsolutePath()
大约只是对于new File(".")
和new File("..")
两种路径有所区别。
- 对于
getCanonicalPath()
函数,.
就表示当前的文件夹,而..
则表示当前文件夹的上一级文件夹。 - 对于
getAbsolutePath()
函数,则不管.
、..
,返回当前的路径加上你在new File()
时设定的路径。 - 至于
getPath()
函数,得到的只是你在new File()
时设定的路径。 比如当前的路径为C:/test
:
File directory = new File("abc");
directory.getCanonicalPath(); //得到的是C:/test/abc
directory.getAbsolutePath(); //得到的是C:/test/abc
direcotry.getPath(); //得到的是abc
File directory = new File(".");
directory.getCanonicalPath(); //得到的是C:/test
directory.getAbsolutePath(); //得到的是C:/test/.
direcotry.getPath(); //得到的是.
File directory = new File("..");
directory.getCanonicalPath(); //得到的是C:/
directory.getAbsolutePath(); //得到的是C:/test/..
direcotry.getPath(); //得到的是..
另外:System.getProperty()
中的字符串参数如下:
java.version
Java Runtime Environment versionjava.vendor
Java Runtime Environment vendorjava.vendor.url
Java vendor URLjava.home
Java installation directoryjava.vm.specification.version
Java Virtual Machine specification versionjava.vm.specification.vendor
Java Virtual Machine specification vendorjava.vm.specification.name
Java Virtual Machine specification namejava.vm.version
Java Virtual Machine implementation versionjava.vm.vendor
Java Virtual Machine implementation vendorjava.vm.name
Java Virtual Machine implementation namejava.specification.version
Java Runtime Environment specification versionjava.specification.vendor
Java Runtime Environment specification vendorjava.specification.name
Java Runtime Environment specification namejava.class.version
Java class format version numberjava.class.path
Java class pathjava.library.path
List of paths to search when loading librariesjava.io.tmpdir
Default temp file pathjava.compiler
Name of JIT compiler to usejava.ext.dirs
Path of extension directory or directoriesos.name
Operating system nameos.arch
Operating system architectureos.version
Operating system versionfile.separator
File separator (/
on UNIX)path.separator
Path separator (:
on UNIX)line.separator
Line separator (\n
on UNIX)user.name
User’s account nameuser.home
User’s home directoryuser.dir
User’s current working directory
JAVA中获取路径 关键字: java中获取路径
- jsp中取得路径:
以工程名为
TEST
为例:
- 得到包含工程名的当前页面全路径:
request.getRequestURI()
结果:/TEST/test.jsp
- 得到工程名:
request.getContextPath()
结果:/TEST
- 得到当前页面所在目录下全名称:
request.getServletPath()
结果:如果页面在jsp
目录下/TEST/jsp/test.jsp
- 得到页面所在服务器的全路径:
application.getRealPath("页面.jsp")
结果:D:/resin/webapps/TEST/test.jsp
- 得到页面所在服务器的绝对路径:
结果:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();
D:/resin/webapps/TEST
- 在类中取得路径:
- 类的绝对路径:
Class.class.getClass().getResource("/").getPath()
结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
- 得到工程的路径:
System.getProperty("user.dir")
结果:D:/TEST