文件路径:反斜杆和正斜杠用法

时间:2023-01-27 19:30:28

      以前在写到读取文件的代码时,经常要用到文件的路径,而每次让我有点搞的糊涂的就是斜杠的用法,又是正斜杠又是反斜杠的,还有双斜杠的,经常要经过几次调试才能正确的把文件的路径弄对,究其原因,主要是每次都没有认真的去总结,总是只要弄出来了就算过了,这样导致每次都会在这个问题上纠结一会,今天终于查了会资料,再加上自己的一些理解,总结一下,以便是我印象更加深刻,也使有需要的同学看到可以根本的解决这个问题。

         “\” 这个是反斜杠,也称左斜杠。
         “/” 这个是正斜杠,也称右斜杠。
          在windows中文件的文件的路径是用反斜杠(\)表示(当初是为了和Unix的文件路径使用”/“区分开来),例如  C:\windows\system,但是我们在写程序的时候能不能再路径的字符串中写成
C:\windows\system?答案是不能的,这一点想一下就会可以理解,在很多编译器中,“\”是一个转义字符,例如“\n,\r”等,如果在程序中写成“C:\windows\system“那么实际上编译出来的就是“C:windowssystem ",从而获取不到文件,但是这个路径可以写成C:\\windows\\system,或者也可以用正斜杠C:/windows/system,这两中方式都是可以的。说到这里,基本上这两种用法不会混淆了,只要记住”\“反斜杠有转义的功能,那么写路径的时候就不会出问题了。
         顺便拓展一下,文件的相对路径和绝对路径:
例如一个绝对路径:C:\\Windows\\System\\aaa.dll 如果当前目录是C:\\windows  那么aaa.dll这个文件的地址可以表示为:
                                                                                     ./system/aaa.dll 中”.“表示当前路径,
                                                                                   ../windows/system/aaa.dll中”..“表示父级目录。
在系统中也经常用到"~"这个符号来提取目录,”~“这个可以表示当前系统的根目录。
          这些是我自己整理的,可能会有不对的地方,如有发现,希望指正。