java.io.File中的pathSeparator与separator的差异

时间:2022-08-06 20:07:08

先总的说一下区别:
  File.pathSeparator指的是分隔连续多个路径字符串的分隔符,例如:
  java  -cp  test.jar;abc.jar  HelloWorld
  就是指“;”

  File.separator才是用来分隔同一个路径字符串中的目录的,例如:
  C:\Program Files\Common Files
  就是指“\”

  separatorChar

  public static final char separatorChar

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

  separator

  public static final String separator

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

  pathSeparatorChar

  public static final char pathSeparatorChar

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

  pathSeparator

  public static final String pathSeparator

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

  例子:

  File ft = new File(File.separator);//指向当前class文件所在的盘符,例如D:
  File ft2 = new File(ft,"File_separator.txt");// D:\File_separator.txt