模块介绍(转官方文档)
path模块的默认操作,因 Node.js 应用程序运行所在的操作系统而异。 具体来说,当在 Windows 操作系统上运行时, path 模块将假定正在使用 Windows 风格的路径。
因此,使用 path.basename() 可能会在 POSIX 和 Windows 上产生不同的结果:
在POSIX上:
path.basename(‘C:\temp\myfile.html’);
// 返回: ‘C:\temp\myfile.html’
在 Windows 上:
path.basename(‘C:\temp\myfile.html’);
// 返回: ‘myfile.html’要在任何操作系统上使用 Windows 文件路径时获得一致的结果,则使用 path.win32:
在 POSIX 和 Windows 上:
path.win32.basename(‘C:\temp\myfile.html’);
// 返回: ‘myfile.html’要在任何操作系统上使用 POSIX 文件路径时获得一致的结果,则使用 path.posix:
在 POSIX 和 Windows 上:
path.posix.basename(’/tmp/myfile.html’);
// 返回: ‘myfile.html’
- 在nodejs中尽量不要使用相对路径("./ " 相对于执行node命令所在的路径)
- 尽量使用绝对路径不同操作系统,路径分隔符不一样使用path路径模块拼接
- 代码如下:
首先要导入模块
//文件读写模块const fs = require(‘fs’);//文件路径模块const path = require(‘path’);console.log(__dirname);//当前js文件所在文件夹绝对路径console.log(__filename);//当前js文件的绝对路径/*使用path.jon拼接文件路径和 连接符 拼接优点1.自动帮我们添加路径分隔符(根据当前操作系统)2.自动改正错误的路径分隔符*///如果想要读取某个文件夹下的其他文件,则可以使用__dirname来拼接let FilePast= path.join(__dirname,“xoxo”,“abab.txt”);console.log(FilePast);fs.readFile(FilePast,‘utf-8’,(err,data)=>{ if(err){ throw err;}else{ console.log(data);}})