今天我在学习web的时候,发现 “./” 进行当前目录的话,并不管用。请看下面图片

 正常来讲 “./” 就是代表当前目录下,但是第20行却并没有显示成功。但绝对路径(第18行)却很成功。为了证实程序的当前路径,我还写了第11行的函数来验证。最后打印出来的路径确实是 “D:/MyGo/mygoweb” 这就很苦恼!

后来看了一篇博主的文章才知道,“./” 是当前的工程目录,并不是该go文件所对应的目录。也就是说:

比如:我这里的 test1.go 文件,路径:MyGo/mygoweb/test1.go。

在 test1.go 中使用 “./” 其路径不是:MyGo/mygoweb/ ,而是:MyGo/

所以这也算一个坑吧。

但是对于这个问题,Go专门提供了一个处理文件路径兼容问题的包:package filepath。

filepath包实现了兼容各操作系统的文件路径的实用操作函数。