java获取指定资源文件路径的几种方法

java获取指定资源文件路径的几种方法,第1张

你好,提问者:

指定资源路径的方法有两种:

一种是绝对路径,一种是相对路径。

获取当前类的所在工程路径; 

File f = new File(thisgetClass()getResource("/")getPath()); 

Systemoutprintln(f); 

获取当前类的绝对路径; 

File f = new File(thisgetClass()getResource("")getPath()); 

Systemoutprintln(f); 

获取当前类的所在工程路径; 

File directory = new File("");//参数为空 

String courseFile = directorygetCanonicalPath() ; 

Systemoutprintln(courseFile); 

获取当前工程src目录下selectedtxt文件的路径:

URL xmlpath = thisgetClass()getClassLoader()getResource("selectedtxt"); 

Systemoutprintln(xmlpath);

一般文件路径在windows中用 \ 表示,但是在其他系统平台下比如linux中就不是 \ 所以java给我们提供了一个与平台无关的表示路径的常量 Fileseparator在windows中则表示 \ 比如现在有一个文件在D:\java\src\myjava中, 如何用绝对路径访问呢?

现在建立一个目录:

File fDir=new File(Fileseparator); //Fileseparator表示根目录,比如现在就表示在D盘下。

String strFile="java"+Fileseparator+"src"+Fileseparator+"myjava"; //这个就是绝对路径

File f=new File(fDir,strFile);

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

你把文件放到一个固定的文件夹下,还有必要得到这个文件的绝对路径吗?都是固定的直按写死不就行啦,唉,偶的神啦,对了,文件托放其实就是文件读取成BYTE数组,然后在另一个目录写成文件,然后把源文件删除。这才是编程思想嘛,托放是相对于用户来说的,你写程序你要看到托放这两个字后面的步骤哦。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存