node.js-path模块你了解多少

目录
  • 1、什么是path模块
  • 2、路径拼接
    • 1、 path.join() 的语法格式
    • 2、path.join()代码示例
    • 3、文件读取路径改写
  • 3、获取路径中的文件名
    • 1、 path.basename() 的语法格式
    • 2、path.basename() 代码示例
  • 4、获取文件的扩展名
    • 1、 path.extname() 的语法格式
  • 总结

1、什么是path模块

【解释】: path 模块是 Node.js 官方提供的、用来处理路径的模块。它提供了一系列的方法和属性,用来满足用户对路径的处理需求。

【基本使用】:

const path = require('path')

2、路径拼接

1、 path.join() 的语法格式

【解释】: 将多个路径片段拼接成完整的路径字符串

【语法】:

path.join([...paths])

【参数解读】:

paths<string>路径片段序列返回值:<string>

2、path.join()代码示例

// 导入路径处理模块
const path = require('path')
// 调用path.join进行路径拼接
// ../会抵消前面的路径
var pathStr1 = path.join('/a', '/b/c', '../', './d', '/c') // \a\b\d\c
var pathStr2 = path.join('/a', '/b/c', '../../', './d', '/c') // \a\d\c
// 输出拼接结果
console.log(pathStr1);
console.log(pathStr2);

3、文件读取路径改写

// 1、导入fs模块 path模块
const fs = require('fs');
const path = require('path')
// 2、使用fs.readfiles()方法读取指定文件的内容
/**
 * 参数1:读取文件的存放路径
 * 参数2:读取文件的时候采用的编码格式
 * 参数3:回调函数,参数1表示读取失败的结果 参数2 表示读取成功的结果
 */
fs.readFile(path.join(__dirname, './files/11.txt'), 'utf-8', function (err, dataStr) {
    if (err) {
        // 读取文件失败,返回错误信息
        return console.log('读取文件失败!!' + err.message);;
    } else {
        // 读取文件成功,打印文件信息
        console.log('读取文件成功:' + dataStr);
    }
})

3、获取路径中的文件名

1、 path.basename() 的语法格式

path.basename(path[,ext])

【参数解读】:

  • path <string> 必选参数,表示一个路径的字符串
  • ext <string> 可选参数,表示文件扩展名
  • 返回: <string> 表示路径中的最后一部分

2、path.basename() 代码示例

// 导入path模块
const path = require('path')
// 定义文件存放的路径
const pathStr = '/a/s/c/index.html'
// 调用path.basename()
const fullName = path.basename(pathStr)
// 调用path.basename() 去除扩展名
const nameWithoutExt = path.basename(pathStr, '.html')
// 输出结果
console.log(fullName); //index.html
console.log(nameWithoutExt); //index

4、获取文件的扩展名

1、 path.extname() 的语法格式

【path.extname() 的语法格式】

path.extname(path)

【参数解读】:

path <string>必选参数,表示一个路径的字符串

返回: <string> 返回得到的扩展名字符串 2、path.extname() 的代码示例

// 引入path模块
const path = require('path')
// 定义一个path文件存放路径
const pathStr = '/a/c/d/d/index.txt'
// 调用path.extname()获取文件扩展名
const ext = path.extname(pathStr)
// 输出结果
console.log(ext); //.txt

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • node.JS路径解析之PATH模块使用方法详解

    路径组成 path.dirname(p) 返回路径p所在的目录 var path = require('path'); console.log(path.dirname('/foo/bar/baz/asdf/a.txt')); // /foo/bar/baz/asdf console.log(path.dirname('/foo/bar/baz/asdf/')); // /foo/bar/baz console.log(path.dirname('C:/test/aaa')); // C:/te

  • Node.js中路径处理模块path详解

    前言 在node.js中,提供了一个path某块,在这个模块中,提供了许多使用的,可被用来处理与转换路径的方法与属性,将path的接口按照用途归类,仔细琢磨琢磨,也就没那么费解了.下面我们就来详细介绍下关于Node.js中的路径处理模块path. 获取路径/文件名/扩展名 获取路径:path.dirname(filepath) 获取文件名:path.basename(filepath) 获取扩展名:path.extname(filepath) 获取所在路径 例子如下: var path = re

  • 深入理解node.js之path模块

    node之path模块 //引用该模块 var path = require("path"); 1.路径解析,得到规范化的路径格式 //对window系统,目录分隔为'\', 对于UNIX系统,分隔符为'/',针对'..'返回上一级:/与\\都被统一转换 //path.normalize(p); var myPath = path.normalize(__dirname + '/test/a//b//../c/utilyou.mp3'); console.log(myPath); //

  • Node.js 中的 fs 模块与Path模块方法详解

    概述: 文件系统模块是一个简单包装的标准 POSIX 文件 I/O 操作方法集.可以通过调用 require("fs") 来获取该模块.文件系统模块中的所有方法均有异步和同步版本. 文件系统模块中的异步方法需要一个完成时的回调函数作为最后一个传入形参. 回调函数的构成由调用的异步方法所决定,通常情况下回调函数的第一个形参为返回的错误信息. 如果异步操作执行正确并返回,该错误形参则为null或者undefined.如果使用的是同步版本的操作方法,一旦出现错误,会以通常的抛出错误的形式返回

  • Node.js path模块,获取文件后缀名操作

    我就废话不多说了,大家还是直接看代码吧~ demo.js: //path模块 var path=require('path'); /*nodejs自带的模块*/ var extname=path.extname("123.html"); //获取文件的后缀名 console.log(extname); 补充知识:node 的path模块中 path.resolve()和path.join()的区别 一.path模块的引入. 直接引用.node中自带的模块 const path = re

  • node.js中path路径模块的使用方法实例分析

    本文实例讲述了node.js中path路径模块的使用方法.分享给大家供大家参考,具体如下: path模块是node.js中处理路径的核心模块.可以很方便的处理关于文件路径的问题. join() 将多个参数值合并成一个路径 const path = require('path'); console.log(path.join('./a', 'b', 'c')); basename() 获取路径中的文件名 const path = require('path'); //获取文件名,包含扩展名 con

  • 详解Node.js中path模块的resolve()和join()方法的区别

    关于Node.js中path模块的resolve()和join()方法的比较,对照着总结看例子差不多以后在写模块的时候思路就能很清晰了 resolve 作用:path.resolve() 该方法将一些的 路径/路径段 解析为绝对路径. 语法:path.resolve([...paths]) 说明: ...paths <string> 一个路径或路径片段的序列 如果没有传入 path 片段,或者path 片段长度为零(空字符),则 path.resolve() 会返回当前工作目录的绝对路径(相当

  • 浅析node.js的模块加载机制

    在node.js中,模块使用CommonJS规范,一个文件是一个模块 node.js中的模块可分为三类 内部模块 - node.js提供的模块如 fs,http,path等 自定模块 - 我们自己写的模块 第三方模块 - 通过npm安装的模块 node.js提供了大量的模块供我们使用,比如 想解析一个文件的路径,可以使用path模块下的相应方法实现: const path = require('path'); //返回目标文件的绝对路径 console.log(path.resolve('./1

  • 完美解决linux下node.js全局模块找不到的情况

    今天在在linux上用npm安装了pm2准备部署node项目,结果通过pm2命令启动项目的时候报pm2找不到,这很伤,以为pm2没有安装成功,但是在node安装目录下面的bin文件夹里面调用pm2却没问题. /usr/local/node/node-v7.3.0-linux-x64/bin/pm2 list 类似这样调用pm2 list命令查看pm2启动的项目没有任何问题. 原来linux系统上通过npm全局安装了模块以后,不能像windos下面那样自动配置环境变量,需要自己动手配置...好吧,

  • 解决linux下node.js全局模块找不到的问题

    今天在在linux上用npm安装了pm2准备部署node项目,结果通过pm2命令启动项目的时候报pm2找不到,这很伤,以为pm2没有安装成功,但是在node安装目录下面的bin文件夹里面调用pm2却没问题. /usr/local/node/node-v7.3.0-linux-x64/bin/pm2 list 类似这样调用pm2 list命令查看pm2启动的项目没有任何问题. 原来linux系统上通过npm全局安装了模块以后,不能像windos下面那样自动配置环境变量,需要自己动手配置...好吧,

  • node.js核心模块有哪些

    全局对象 在浏览器JS中,通常window是全局对象,而nodejs中的全局对象是global,所有全局变量都是global对象的属性. 在nodejs中能够直接访问到的对象通常都是global的属性,如console. process等 全局对象与全局变量 global最根本的作用是作为全局变量的宿主. 全局变量的条件: 在最外层定义的变量:全局对象的属性:隐式定义的变量(未定义直接赋值的变量) 定义一个全局变量,同时也是全局对象的属性. 永远使用var定义变量以避免引入全局变量,因为全局变量

  • node.js文件系统模块和两个重要模块

    目录 一.node.js文件系统模块 node.js fs文件系统 读取文件 写入文件 二.node.js的两个重要模块 path路径模块 http模块 一.node.js文件系统模块 node.js javascript之所以能够被浏览器执行是因为有javascript的解析引擎的作用,而不同的浏览器使用不同的JavaScript的解析引擎,Chrome浏览器使用的v8解析引擎,体验最好,浏览器内置dom和bom的api函数,JavaScript可以调用这些函数来完成相应的功能 node.js

  • 用C/C++来实现 Node.js 的模块(一)

    N久之前的一个坑--用 Node.js 来重构 NBUT 的 Online Judge,包括评测端也得重构一遍.(至于什么时候完成大家就不要关心了,(/‵Д′)/~ ╧╧ 总之我们现在要做的其实简而言之就是--用C/C++来实现 Node.js 的模块. 准备工作 工欲善其事,必先~~耍流氓~~利其器. node-gyp 首先你需要一个 node-gyp 模块. 在任意角落,执行: 复制代码 代码如下: $ npm install node-gyp -g 在进行一系列的 blahblah 之后,

  • node.js基础模块http、网页分析工具cherrio实现爬虫

    一.前言       说是爬虫初探,其实并没有用到爬虫相关第三方类库,主要用了node.js基础模块http.网页分析工具cherrio. 使用http直接获取url路径对应网页资源,然后使用cherrio分析. 这里我主要学习过的案例自己敲了一遍,加深理解.在coding的过程中,我第一次把jq获取后的对象直接用forEach遍历,直接报错,是因为jq没有对应的这个方法,只有js数组可以调用. 二.知识点     ①:superagent抓去网页工具.我暂时未用到.     ②:cherrio

  • node.js ws模块搭建websocket服务端的方法示例

    首先下载websocket模块,命令行输入 npm install ws node.js的 模块ws,可用于创建websocket服务,基本的express 和 http模块的使用 var express = require('express'); var http = require('http'); var WebSocket = require('ws'); var app = express(); var server = http.createServer(app); var wss

  • Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法

    fs模块.js: /* 1. fs.stat 检测是文件还是目录(目录 文件是否存在) 2. fs.mkdir 创建目录 (创建之前先判断是否存在) 3. fs.writeFile 写入文件(文件不存在就创建,但不能创建目录) 4. fs.appendFile 写入追加文件 5.fs.readFile 读取文件 6.fs.readdir 读取目录 7.fs.rename 重命名 8. fs.rmdir 删除目录 9. fs.unlink 删除文件 */ var fs=require('fs');

随机推荐