nodejs中path模块

模块介绍(转官方文档)

path模块的默认操作,因 Node.js 应用程序运行所在的操作系统而异。 具体来说,当在 Windows 操作系统上运行时, path 模块将假定正在使用 Windows 风格的路径。

因此,使用 path.basename() 可能会在 POSIX 和 Windows 上产生不同的结果:

在POSIX上:

path.basename(‘C: empmyfile.html’);
// 返回: ‘C: empmyfile.html’

在 Windows 上:

path.basename(‘C: empmyfile.html’);
// 返回: ‘myfile.html’
要在任何操作系统上使用 Windows 文件路径时获得一致的结果,则使用 path.win32:

在 POSIX 和 Windows 上:

path.win32.basename(‘C: empmyfile.html’);
// 返回: ‘myfile.html’
要在任何操作系统上使用 POSIX 文件路径时获得一致的结果,则使用 path.posix:

在 POSIX 和 Windows 上:

path.posix.basename(’/tmp/myfile.html’);
// 返回: ‘myfile.html’

  1. 在nodejs中尽量不要使用相对路径("./ " 相对于执行node命令所在的路径)
  2. 尽量使用绝对路径
    不同操作系统,路径分隔符不一样
    使用path路径模块拼接  
  3. 代码如下:

首先要导入模块
//文件读写模块
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);
}
})

见习搬运工
原文地址:https://www.cnblogs.com/mound/p/10526853.html