前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >文件路径问题

文件路径问题

作者头像
简单点
发布2022-10-04 20:28:57
2K0
发布2022-10-04 20:28:57
举报
文章被收录于专栏:vaevae

我们在获取文件路径时,一般使用相对路径;可能能会出现路径拼接错误问题,因为提供了./或../开头的文件。并且移植性非常差,不利于后期维护。提供以下几种解决方式:

一,提供完整路径

代码语言:javascript
复制
fs.writeFile('E:\\node.js\\writeFile\\c.txt','大家好,我系渣渣辉啊',(err)=>{
 //1,如果文件写入成功,则err的值为null
 //2,如果文件写入失败,则err的值为错误对象
 console.log(err)
 //对结果进行判断
 if(err){
 return console.log('文件写入失败1='+err)
    }
 console.log('文件写入成功1='+err)
})

二,使用__dirname

  1. __dirname 表示当前文件所在的目录。

代码语言:javascript
复制
fs.writeFile(__dirname+'/c.txt','大家好,我系渣渣辉啊222',(err)=>{
 //1,如果文件写入成功,则err的值为null
 //2,如果文件写入失败,则err的值为错误对象
 console.log(err)
 //对结果进行判断
 if(err){
 return console.log('文件写入失败='+err)
    }
 console.log('文件写入成功='+err)
})

三,使用path.join 【推荐使用】

代码语言:javascript
复制
const path=require('path')
//注意:../会抵消前面的路径
const pathStr=path.join('/a','/b/c','../','/d')
console.log('拼接=',pathStr) //\a\b\d
fs.writeFile(path.join(__dirname,'/c.txt'),'你好',(err)=>{
 //对结果进行判断
 if(err){
 return console.log('文件写入失败2='+err)
    }
 console.log('文件写入成功2='+err)
})

四,获取文件名和扩展名

  1. 获取文件名:path.basename()
  2. 获取文件扩展名:path.extname()
代码语言:javascript
复制
const path=require('path')
/***
 *    path.basename  获取文件名
 */
const fpath='/a/b/c/index.html'
const fullName=path.basename(fpath)
console.log(fullName)//index.html
//通过第二个参数,去除后缀扩展名
const fullName2=path.basename(fpath,'.html')
console.log(fullName2)//index
/**
 *      path.extname()  获取文件扩展名
 * */
const fpath2='/a/b/c/index.html'
console.log(path.extname(fpath2))  //.html
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-09-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一,提供完整路径
  • 二,使用__dirname
  • 三,使用path.join 【推荐使用】
  • 四,获取文件名和扩展名
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档