java中File文件路径跨平台(File.separator)

来源:互联网 发布:网络二手车平台骗局 编辑:程序博客网 时间:2024/06/11 13:35

java中File文件路径跨平台

java具有跨平台的特性,可以在不同的系统中运行java程序,那么针对不同系统中路径分割符的不同,我们如何设置File中文件的路径呢?

如果我们要在test文件夹下建立一个demo.txt文件,这里没有说明操作系统,我们如何读取呢?

按照平常的方法,在Windows平台下,我们这样写:

        Filefile=new File(“C:\\test\\demo.txt”);

在Linux平台下,我们这样写:

         File file=new File(“/test/demo.txt”);

可以看到,这太麻烦了,我们没有可能一种方法写出自动识别系统的代码呢?

答案是肯定的,Java中的File类给我们提供了静态成员变量,可以帮我们代替分隔符,它将会自动根据系统的不同来转换,具体如下:

Ø  separatorChar :与系统有关的默认名称分隔符。此字段被初始化为包含系统属性file.separator 值的第一个字符。在UNIX 系统上,此字段的值为 '/';在 Microsoft Windows 系统上,它为 '\\'。

Ø  separator :与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。此字符串只包含一个字符,即separatorChar。

Ø  pathSeparatorChar :与系统有关的路径分隔符。此字段被初始为包含系统属性 path.separator 值的第一个字符。此字符用于分隔以 路径列表 形式给定的文件序列中的文件名。在 UNIX 系统上,此字段为 ':';在 MicrosoftWindows 系统上,它为 ';'。

Ø  pathSeparator :与系统有关的路径分隔符,为了方便,它被表示为一个字符串。此字符串只包含一个字符,即pathSeparatorChar。

 

则上面的例子便可以这样写了:

File file=new File("C:"+File.separator+"test"+ File.separator+" demo.txt");

0 0
原创粉丝点击