node js如何检查文件是否存在

2023-03-10 17:36 17次浏览 攻略

点击上面的蓝字,关注“小丁做代码工作”,每天学习知识,可以理解一个问题!

该摘要说明,在Node.js中,文件路径操作(以下内容的重要基础)不是文件系统操作(下一步),因此必须首先引入文件路径操作path文件。

var path = require('path')

有关于这些规定死的东西,作为开发者,至少要知道有这些方法,而且知道怎么使用这些方法。所以如果你从头到尾把这篇文章看一遍,那这两个目的你也就达到了。关于文件路径操作,我总结了一下,大概分成9类,(都很简单易懂)下面一个一个来看。

一、查询路径

对于路径,首先,我们要知道怎么怎么查询,然后才是操作,下面是一个例子:

由上图可以看出:

__dirname:指当前文件夹的完整路径。

__filename:指当前文件名的完整路径。

():指当前执行node命令时的文件夹的路径。

():改变工作目录。

:指node执行文件的安装路径。

下面是上面那段代码执行的结果:

个人觉得这里需要注意理解__dirname和()的区别。

二、操作路径

有关操作路径,其实就是一个数组的join方法,其次node的方法,它默认得到路径分隔符。看一个例子:

这个例子的结果是:

理解起来不困难,需要注意的是:在window下打印的是''而不是'/'。同时在window下使用join方法的正确姿势是join('\')。当然,的用法还可以用来将路径字符串转换成数组。

下面我们顺便看一下的定义用法。

方法:将特定文字分隔符'\'或''的字符串转换成数组对象。以上面那个字符串为例:

'foo/bar/baz'.split()

将会输出一个数组:[ 'foo', 'bar', 'baz' ]

三、环境变量

同样通过一个例子来说明:

上面这个例子中,提供的是具体路径分隔符,';'(windows)':'(其它)。提供的是环境变量的完整路径。因此,打印出来的结果如下图所示:

四、返回文件扩展名

方法:

上面代码返回:'.txt'。

五、返回文件名

方法:

上面代码返回:'baz.txt'。

六、返回父文件的路径

方法:

上面代码返回:'/foo/bar'

七、序列化路径

方法:

上面代码返回:'/baz'。

当然,实现上面同样功能的,还有():

("/foo/bar", ".././bar", "../..", "/baz")

join这个方法在文章最后会提到。

八、相对路径

方法:

上面代码返回:'../../baz/biff'

九、其它

除了上面这些,还有一些常用的方法:

1、(from,to):将参数to位置的字符解析到一个绝对路径里。

如:con(('../foo/bar','./baz'))

输出:/foo/bar/baz

2、():将多个参数组合成一个path。

如:con(('../foo/bar','./baz'))

输出:../foo/bar/baz

3、():判断是否是一个绝对路径。

如:con(('./foo/bar'),('/foo/bar'))

输出:false true

4、():输出路径信息

如:('/home/user/dir;)

输出:{root:'/',dir:'/home/user/dir',base:';,ext:'.txt',name:'file'}

5、():还原一个完整路径

如:({dir:'/home/user/dir',base:';})

输出:/home/user/dir

最后总结

还是文章开头的那句话,这些文件操作的方法简单易懂,在node.js官网上也有详细的说明,但这些都是学习node.js其它内容的重要基础,下一篇我来写一下文件系统操作。可以期待一下

以上都是个人理解,如有不对的地方,请留言交流!!!也可以关注,一起学习后面的内容

相关推荐