在Windows中,磁盘中用反斜杠(又称为右斜杠)\表示路径的分隔。在浏览器中用正斜杠/来表示路径的分隔。
 
 
 Linux则是统一用/表示路径的分隔的。下面给出Linux中一些常见的路径表示:
- / 表示根目录
 - ./ 表示当前目录
 - …/ 表示上级目录
 
那么对于Java而言,路径分隔**推荐使用正斜杠(又称为左斜杠/,不推荐使用反斜杠(反斜杠需要转义:两个反斜杠\\表示一个正杠/)。
 关于这个正反斜杠,我们来看一下Java代码实战:
@Test
public void test001(){
    // 路径以"/"开头表示Java项目所在的磁盘路径
    File file1 = new File("/");  
    // "\\"等于"/",但是不推荐使用
    File file2 = new File("\\"); 
    // 拼接路径推荐使用File.separator,会根据操作系统的不同帮我们自动识别路径分隔符
    File file3 = new File(File.separator); 
    // "./"表示当前项目的相对路径
    File file4 = new File("./"); 
    // 绝对路径
    File file5 = new File("C:/Users/IQ50/Pictures"); 
    // 绝对路径,同file5,但是不推荐使用
    File file6 = new File("C:\\Users\\IQ50\\Pictures"); 
    // 表示当前项目的相对路径下的文件,同"./test.txt"
    File file7 = new File("test.txt");  
    // 表示当前项目的相对路径下的文件,同"./testFolder/test.txt"
    File file8 = new File("testFolder/test.txt"); 
    // 表示Java项目所在的磁盘路径下的文件
    File file9 = new File("/test.txt"); 
    System.out.println(file1.getAbsolutePath());
    System.out.println(file2.getAbsolutePath());
    System.out.println(file3.getAbsolutePath());
    System.out.println(file4.getAbsolutePath());
    System.out.println(file5.getAbsolutePath());
    System.out.println(file6.getAbsolutePath());
    System.out.println(file7.getAbsolutePath());
    System.out.println(file8.getAbsolutePath());
    System.out.println(file9.getAbsolutePath());
}
 
来看下打印输出:
 
 总结一下,在Java中,如果遇到拼接路径的情况,请使用File.separator。



















