Java获取当前路径的几种方法

Java获取当前路径的几种方法,第1张

1、利用SystemgetProperty()函数获取当前路径

Systemoutprintln(SystemgetProperty("userdir"));//userdir指定了当前的路径

2、使用File提供的函数获取当前路径:

File directory = new File("");//设定为当前文件夹

try{

Systemoutprintln(directorygetCanonicalPath());//获取标准的路径

Systemoutprintln(directorygetAbsolutePath());//获取绝对路径

}catch(Exceptin e){}

FilegetCanonicalPath()和FilegetAbsolutePath()大约只是对于new File("")和new File("")两种路径有所区别。

# 对于getCanonicalPath()函数,“"就表示当前的文件夹,而”“则表示当前文件夹的上一级文件夹

# 对于getAbsolutePath()函数,则不管””、“”,返回当前的路径加上你在new File()时设定的路径

# 至于getPath()函数,得到的只是你在new File()时设定的路径

比如当前的路径为 C:/test :

File directory = new File("abc");

directorygetCanonicalPath(); //得到的是C:/test/abc

directorygetAbsolutePath(); //得到的是C:/test/abc

direcotrygetPath(); //得到的是abc

File directory = new File("");

directorygetCanonicalPath(); //得到的是C:/test

directorygetAbsolutePath(); //得到的是C:/test/

direcotrygetPath(); //得到的是

File directory = new File("");

directorygetCanonicalPath(); //得到的是C:/

directorygetAbsolutePath(); //得到的是C:/test/

direcotrygetPath(); //得到的是

另外:SystemgetProperty()中的字符串参数如下:

SystemgetProperty()参数大全

# javaversion Java Runtime Environment version

# javavendor Java Runtime Environment vendor

# javavendorurl Java vendor URL

# javahome Java installation directory

# javavmspecificationversion Java Virtual Machine specification version

# javavmspecificationvendor Java Virtual Machine specification vendor

# javavmspecificationname Java Virtual Machine specification name

# javavmversion Java Virtual Machine implementation version

# javavmvendor Java Virtual Machine implementation vendor

# javavmname Java Virtual Machine implementation name

# javaspecificationversion Java Runtime Environment specification version

# javaspecificationvendor Java Runtime Environment specification vendor

# javaspecificationname Java Runtime Environment specification name

# javaclassversion Java class format version number

# javaclasspath Java class path

# javalibrarypath List of paths to search when loading libraries

# javaiotmpdir Default temp file path

# javacompiler Name of JIT compiler to use

# javaextdirs Path of extension directory or directories

# osname Operating system name

# osarch Operating system architecture

# osversion Operating system version

# fileseparator File separator ("/" on UNIX)

# pathseparator Path separator (":" on UNIX)

# lineseparator Line separator ("/n" on UNIX)

# username User’s account name

# userhome User’s home directory

# userdir User’s current working directory

JAVA中获取路径:

1jsp中取得路径:

以工程名为TEST为例:

(1)得到包含工程名的当前页面全路径:requestgetRequestURI()

结果:/TEST/testjsp

(2)得到工程名:requestgetContextPath()

结果:/TEST

(3)得到当前页面所在目录下全名称:requestgetServletPath()

结果:如果页面在jsp目录下 /TEST/jsp/testjsp

(4)得到页面所在服务器的全路径:applicationgetRealPath("页面jsp")

结果:D:/resin/webapps/TEST/testjsp

(5)得到页面所在服务器的绝对路径:absPath=new javaioFile(applicationgetRealPath(requestgetRequestURI()))getParent();

结果:D:/resin/webapps/TEST

2在类中取得路径:

(1)类的绝对路径:ClassclassgetClass()getResource("/")getPath()

结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/

(2)得到工程的路径:SystemgetProperty("userdir")

结果:D:/TEST

3在Servlet中取得路径:

(1)得到工程目录:requestgetSession()getServletContext()getRealPath("") 参数可具体到包名。

结果:E:/Tomcat/webapps/TEST

(2)得到IE地址栏地址:requestgetRequestURL()

结果:>

网页链接

getFile文件上传

Controller提供了getFile系列方法支持文件上传。

特别注意:如果客户端请求为multipart request(form表单使用了enctype="multipart/form-data"),那么必须先调用getFile系列方法才能使getPara系列方法正常工作,因为multipart request需要通过getFile系列方法解析请求体中的数据,包括参数。同样的道理在Interceptor、Validator中也需要先调用getFile。

文件默认上传至项目根路径下的upload子路径之下,该路径称为文件上传基础路径。可以在 JFinalConfigconfigConstant(Constants me)方法中通过mesetBaseUploadPath(baseUploadPath) 设置文件上传基础路径,该路径参数接受以”/”打头或者以windows磁盘盘符打头的绝对路径,即可将基础路径指向项目根径之外,方便单机多实例部署。当该路径参数设置为相对路径时,则是以项目根为基础的相对路径。

上面是注意事项, 

代码:

UploadFile uf = getFile();

File f = ufgetFile();

String path = fgetPath();

//或者 String path = ufgetUploadPath() + Fileseparator + ufgetFileName();

一、Servlet实现文件上传,需要添加第三方提供的jar包

下载地址:

1) commons-fileupload-122-binzip: 点击打开链接

2) commons-io-23-binzip: 点击打开链接

接着把这两个jar包放到 lib文件夹下:

二:文件上传的表单提交方式必须是POST方式,

编码类型:enctype="multipart/form-data",默认是 application/x- >

以上就是关于Java获取当前路径的几种方法全部的内容,包括:Java获取当前路径的几种方法、如何通过全路径获取 realpath、jfinal整合hdfs文件上传时如何获取真实路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9564079.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存