模塊介紹(轉官方文檔)
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);
}
})