java中转义字符和路径符

时间:2023-01-04 18:44:02

在java的实际开发中,经常会遇填写一个文件的相对路径或者是绝对路径的问题,对于初学者来说,经常犯难的是到底是用\ 还是用/的问题,本文将彻底解决这个问题的困扰.

先来看要下路径符号在windows系统和再linux系统写的显示使用的区别:
Windows下的路径:
java中转义字符和路径符
Linux下的路径:
java中转义字符和路径符

对比可以发现:windows使用的是\ linux使用的是/
然而在java的代码开发中\是代表转义字符的,/才是代表路径符号,也就是说java代码中的路径符号与linux下的显示路径符号是一致的.相反在windows下的显示是恰好与java代码中的路径符号是相反的.

当然在java代码中开发时是可以使用转义字符来处理路径符号的:
String path = "D:\ProgramFiles";
String path = "D:\\ProgramFiles"; 正确,用了转义符号
同样是也还是你可以直接使用路径符号来表达的:
String path = "D:/ProgramFiles"; 正确,路径符号不需要转义

另外需要注意的是Java的转义字符\的转义并不是什么都需要转义,什么都可以转义,它只支持一下转义:
\b \t \n \f \r \" \' \\

下面是同一段代码在windows环境和linux环境运行对比:
源码:

public class Test {

public static void main(String[] args) {

// System.out.println("D:\ProgramFiles");//报错,转义符号要接待转义的字符
System.out.println("D:/ProgramFiles");

System.out.println("D:\\ProgramFiles");// 转义后
System.out.println("D://ProgramFiles");
}
}

结果对比:
java中转义字符和路径符
java中转义字符和路径符
对比发现编译后显示是没有区别的,主要区别还是在操作系统对路径符号的使用区别.

建议:

  • 考虑的项目的运行环境可能是Linux,也肯能是windows,这里建议大家使用转义的方式来表达路径:String path ="D:\\ProgramFiles";