来源于:http://blog.csdn.net/u011479200/article/details/69062343
在Java的实际开发中,经常会遇填写一个文件的相对路径或者是绝对路径的问题,对于初学者来说,经常犯难的是到底是用\
还是用/
的问题,本文将彻底解决这个问题的困扰.
先来看要下路径符号在windows系统和再Linux系统写的显示使用的区别:
Windows下的路径: Linux下的路径:对比可以发现:windows使用的是\
linux使用的是/
\
是代表转义字符的,/
才是代表路径符号,也就是说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"); } }
结果对比:
对比发现编译后显示是没有区别的,主要区别还是在操作系统对路径符号的使用区别.
建议:
-
- 考虑的项目的运行环境可能是Linux,也肯能是windows,这里建议大家使用转义的方式来表达路径:
String path ="D:\\ProgramFiles";
- 考虑的项目的运行环境可能是Linux,也肯能是windows,这里建议大家使用转义的方式来表达路径: