android文件管理器获取路径,android 获取路径目录方法 以及 获取路径方法

Directory(String type)

解释:返回 File ,取一个高端的公用的外部存储器目录来摆放某些类型的文件

* 方法:getExternalStorageState()

解释:返回 File ,获取外部存储设备的当前状态

* 方法:getRootDirectory()

解释:返回 File ,获取 Android 的根目录

file的getPath getAbsolutePath和getCanonicalPath的不同

File的这三个方法在api中都有说明,仅以程序为例说明。

package test;

import java.io.File;

import java.io.IOException;

public class TestFilePath {

public static void main(String[] args) {

// TODO Auto-generated methodstub

System.out.println(System.getProperty("user.dir"));

try {

System.out.println("-----默认相对路径:取得路径不同------");

File file1 =new File("..\\src\\test1.txt");

System.out.println(file1.getPath());

System.out.println(file1.getAbsolutePath());

System.out.println(file1.getCanonicalPath());

System.out.println("-----默认相对路径:取得路径不同------");

File file =new File(".\\test1.txt");

System.out.println(file.getPath());

System.out.println(file.getAbsolutePath());

System.out.println(file.getCanonicalPath());

System.out.println("-----默认绝对路径:取得路径相同------");

File file2 =new File("D:\\workspace\\test\\test1.txt");

System.out.println(file2.getPath());

System.out.println(file2.getAbsolutePath());

System.out.println(file2.getCanonicalPath());

} catch (IOException e) {

// TODOAuto-generated catch block

e.printStackTrace();

}

}

}

程序执行结果如下:

F:\eclipseworkspace\testejb

-----默认相对路径:取得路径不同------

..\src\test1.txt

F:\eclipseworkspace\testejb\..\src\test1.txt

F:\eclipseworkspace\src\test1.txt

-----默认相对路径:取得路径不同------

.\test1.txt

F:\eclipseworkspace\testejb\.\test1.txt

F:\eclipseworkspace\testejb\test1.txt

-----默认绝对路径:取得路径相同------

D:\workspace\test\test1.txt

D:\workspace\test\test1.txt

D:\workspace\test\test1.txt

结论:

当输入为绝对路径时,返回的都是绝对路径。

当输入为相对路径时:

getPath()返回的是File构造方法里的路径,是什么就是什么,不增不减

getAbsolutePath()返回的其实是user.dir+getPath()的内容,从上面F:\eclipseworkspace\testejb、F:\eclipseworkspace\testejb\..\src\test1.txt、F:\eclipseworkspace\testejb\.\test1.txt可以得出。

getCanonicalPath()返回的就是标准的将符号完全解析的路径

public String getAbsolutePath()返回抽象路径名的绝对路径名字符串。

如果此抽象路径名已经是绝对路径名,则返回该路径名字符串,这与 getPath()

方法一样。如果此抽象路径名是空的抽象路径名,则返回当前用户目录的路径名字符串,该目录由系统属性 user.dir

指定。否则,使用与系统有关的方式分析此路径名。在 UNIX

系统上,通过根据当前用户目录分析某一相对路径名,可使该路径名成为绝对路径名。在 Microsoft Windows

系统上,通过由路径名指定的当前驱动器目录(如果有)来分析某一相对路径名,可使该路径名成为绝对路径名;否则,可以根据当前用户目录来分析它。

返回:

绝对路径名字符串,它与此抽象路径名表示相同的文件或目录的

抛出:

SecurityException - 如果无法访问所需的系统属性值。

另请参见:

isAbsolute()

public String getCanonicalPath()

throws IOException返回抽象路径名的规范路径名字符串。

规范路径名是绝对路径名,并且是惟一的。规范路径名的准确定义与系统有关。如有必要,此方法首先将路径名转换成绝对路径名,这与调用

getAbsolutePath()

方法的效果一样,然后用与系统相关的方式将它映射到其惟一路径名。这通常涉及到从路径名中移除多余的名称(比如 "." 和

"..")、分析符号连接(对于 UNIX 平台),以及将驱动器名转换成标准大小写形式(对于 Microsoft Windows

平台)。

表示现有文件或目录的每个路径名都有一个惟一的规范形式。表示非存在文件或目录的每个路径名也有一个惟一的规范形式。非存在文件或目录路径名的规范形式可能不同于创建文件或目录之后同一路径名的规范形式。同样,现有文件或目录路径名的规范形式可能不同于删除文件或目录之后同一路径名的规范形式。

返回:

表示与此抽象路径名相同的文件或目录的规范路径名字符串

抛出:

IOException - 如果发生 I/O 错误(可能是因为构造规范路径名需要进行文件系统查询)

SecurityException - 如果无法访问所需的系统属性值,或者存在安全管理器,且其

SecurityManager.checkRead(java.io.FileDescriptor)

方法拒绝对该文件进行读取访问

从以下版本开始:

JDK1.1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值