如何java获取路径`

如何java获取路径`,第1张

可以的 采用 File 类 和 FileFilter 接口:

public static void main(String args[]){

File directory = new File("/conf/sechand/naalee/");

Systemoutprintln(directoryisDirectory());

File[] fileList = directorylistFiles(new javaioFileFilter() {

public boolean accept(File file) {

if(filegetName()endsWith("conf")) return true;

else return false;

}});

for (File file : fileList) {

Systemoutprintln(filegetPath());

}

}

File类有两个常用方法可以得到文件路径一个是:getCanonicalPath(),另一个是:getAbsolutePath(),可以通过File类的实例调用这两个方法例如filegetAbsolutePath()其中file是File的实例对象。下面是一个具体例子:

public class PathTest

{

public static void main(String[] args)

{

File file = new File("\\src\\baidu");

Systemoutprintln(filegetAbsolutePath());

try

{

Systemoutprintln(filegetCanonicalPath());

} catch (IOException e)

{

eprintStackTrace();

}

}

}

getAbsolutePath()和getCanonicalPath()的不同之处在于,getCanonicalPath()得到的是一个规范的路径,而getAbsolutePath()是用构造File对象的路径+当前工作目录。例如在上面的例子中(点号)代表当前目录。getCanonicalPath()就会把它解析为当前目录但是getAbsolutePath()会把它解析成为目录名字(目录名字是点号)。

下面是上面程序在我电脑上的输出:

G:\xhuoj\konw\\src\baidu

G:\xhuoj\konw\src\baidu

java文件中获得路径

ThreadcurrentThread()getContextClassLoader()getResource("") //获得资源文件(class文件)所在路径

ClassLoadergetSystemResource("")

Class_NameclassgetClassLoader()getResource("")

Class_Nameclass getResource("/")

Class_Nameclass getResource("") // 获得当前类所在路径

SystemgetProperty("userdir") // 获得项目根目录的绝对路径

SystemgetProperty("javaclasspath") //得到类路径和包路径

打印输出依次如下:

file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/

file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/

file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/

file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/

file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/com/xml/imp/

F:\work_litao\uri_test

F:\work_litao\uri_test\WebContent\WEB-INF\classes;F:\work_litao\uri_test\WebContent\WEB-INF\lib\dom4jjar

2、 JSP中获得当前应用的相对路径和绝对路径

根目录所对应的绝对路径:requestgetRequestURI()

文件的绝对路径:applicationgetRealPath(requestgetRequestURI());

当前web应用的绝对路径 :applicationgetRealPath("/");

取得请求文件的上层目录:new File(applicationgetRealPath(requestgetRequestURI()))getParent()

基本概念的理解绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例 如:C:xyz esttxt 代表了testtxt文件的绝对路径。>

String realpath = ServletActionContextgetServletContext()getRealPath("/upload") ;//获取服务器路径

String[] targetFileName = uploadFileName;

for (int i = 0; i < uploadlength; i++) {

File target = new File(realpath, targetFileName[i]);

FileUtilscopyFile(upload[i], target);

//这是一个文件复制类copyFile()里面就是IO *** 作,如果你不用这个类也可以自己写一个IO复制文件的类

}

其中private File[] upload;// 实际上传文件

private String[] uploadContentType; // 文件的内容类型

private String[] uploadFileName; // 上传文件名

这三个参数必须这样命名,因为文件上传控件默认是封装了这3个参数的,且在action里面他们应有get,set方法

路径获取分直接写死在代码上和动态获取路径。直接写死就不说了,动态获取方法很多最常用的/和${pageContextrequestcontextPath},获取路径可以用getClass()getResource()。URl和URL一个是相对路径一个是绝对路径,比如相对路径和你同包的你直接写对象(类,各种格式文件)名字就行,绝对路径就是你的项目名+包+你的应用名。

以上就是关于如何java获取路径`全部的内容,包括:如何java获取路径`、java获取某个文件夹的路径怎么写、java怎么获取上传文件的路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9448521.html

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

发表评论

登录后才能评论

评论列表(0条)

保存