在java项目中如何获取某个文件的路径

在java项目中如何获取某个文件的路径,第1张

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获取根路径有两种方式:

1)在servlet可以用一下方法取得:

requestgetRealPath(“/”)

例如:filepach = requestgetRealPath(“/”)+”//upload//”;

2)不从jsp,或servlet中获取,只从普通java类中获取:

String path = getClass()getProtectionDomain()getCodeSource()getLocation()getPath();

SAXReader() saxReader = new SAXReader();

if(pathindexOf(“WEB-INF”)>0){

path = pathsubstring(0,pathindexOf(“/WEB-INF/classes”)+16);

// ‘/WEB-INF/classes’为16位

document = saxReaderread(path+filename);

}else{

document = saxReaderread(getClass()getResourceAsStream(filename));

}

你要获取的是什么路径:

web应用:

EL表达式获取: ${pageContextrequestcontextPath }

EL表达式通过配置初始化参数获取: ${initParamroot }

2 获取servlet的路径:

a requestgetFullName(); 获取到当前servlet的名称

b requestgetContextPath(); 获取整个web应用的名称

c requestsetAttribute("name", (b) + "/servlet/" + (a) ); 作为参数传递给 bjsp

d 在jsp页面通过EL表达式获取: ${name }

      希望能帮助你

假设有一个项目名为:report_emp

requestgetContextPath()获得的是当前的项目名 /report_emp,

要想获得项目实际在磁盘中存贮路径可以使用requestgetSession()getServletContext()getRealPath("/");

本地资源管理器而言:

绝对路径:是从盘符开始的路径,磁盘上真正的路径的,例如:E:\帮助文档\Jquery\jqAPI;

相对路径:是从当前路径开始的路径,如当前路径为E:\帮助文档,则Jquery\jqAPI为相对路径;

就web站点而言:

假如我们在report_emp的admin/loginjsp中访问了report_emp/admin/images/logogif的

绝对路径:以Web 站点根目录为参考基础的目录路径;

在loginjsp中的src则为report_emp/admin/images/logogif

相对路径:以引用文件之网页所在位置为参考基础,而建立出的目录路径;

在loginjsp中的src则为/images/logogif

以上就是关于在java项目中如何获取某个文件的路径全部的内容,包括:在java项目中如何获取某个文件的路径、java怎么取到web服务的根路径、jsp获取发起请求的servlet路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存