Windows与Linux路径分隔符对比及Java代码实战

在Windows中,磁盘中用反斜杠(又称为右斜杠)\表示路径的分隔。在浏览器中用正斜杠/来表示路径的分隔。
cmd中的磁盘路径表示
浏览器路径表示
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());
}

来看下打印输出:
image.png
总结一下,在Java中,如果遇到拼接路径的情况,请使用File.separator

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值