nodejs中内置模块fs,path常见的用法说明


Posted in NodeJs onNovember 07, 2020

readFile

readFileSync 同步读取数据

var fs=require('fs');

fs.readFileSync('./a.txt');

readFile 异步读取数据

var fs=require('fs'); //引入文件
fs.readFile('./a.txt',function(err,data){

//当异步读取完文件数据后执行该回调函数中代码
//err 错误对象;
//data 数据
if(err){
 console.log('读取文件出错');
return;
 }
 //正常打印数据
 console.log(data.toString());
})
console.log('111');

写文件writeFile

writeFileSync 同步读取数据

var fs=require('fs'); //引入内置模块

fs.writeFileSync("b.txt","我是写入的内容");

writeFile 异步读取数据

fs.writeFile('c.txt','我是写入的内容',function(err){
 if(err){
 console.log('写文件出错');
 return;
}
console.log('写文件出错');

})
console.log('111');

练习

var fs=require('fs'); //引入文件模块

fs.mkdirSync('./web1804'); //同步创建目录;
fs.writeFileSync('./web1804/node1.txt','这是我的学习笔记');
var data=fs.readFileSync('./web1804/node1.txt');
console.log(data.toString());

fs.mkdir('./web1804_1',function(err){
  if(err){
 console.log('创建目录失败');
 return;
  }
  console.log('创建目录成功');
})

var isExist=fs.existsSync('./web1804');

拓展

1、文件删除;

2、创建多级目录 d:/web1804/javascript/css

3、删除文件目录

4、复制文件

创建目录fs.mkdir

检测是文件还是目录 fs.stat

写入追加文件 fs.oppendFile

读取目录fs.readdir

重命名 rename

删除目录 rmdir

删除文件 unlink

path

var path=require('path);
var psth1="http://www.baidu.com.cn/img.jpg ";

var index=psth1.indexOf('/');
console.log(index);

var lastindex=psth1.lastIndexOf('/'); //从后向前获取指定字符在字符串中的序号
var sub=path1.substring(lastindex+1); //substring(index) 返回指定序号index后的子字符串
console.log('sub:+'+sub);

path.basename返回路径的最后一部分

var psth1="http://www.baidu.com.cn/img.jpg "; 
var imgName=path.basename(path1); //返回路径的最后一部分,个人认为用这个来获取文件名或者URL中带的参数
console.log(imgName);

path.jion

var paths=path.jion('web1804','html','css');

console.log(paths); //web1804\html\css

path.parse返回路径字符串的对象

var path1='http://www.baidu.com.cn/img.jpg';
var url=path.parse(path1);
console.log(url);

console.log(_dirname); 当前绝对路径

拓展

substring(); 返回指定序号index后的子字符串;

lastIdexOf 从后向前获取指定字符中在字符串中序号;

补充知识:NodeJs内置的url、path、http模块的应用

1.url模块:

//引入url模块
var url = require("url");

//假设一个网址
var href = "http://www.baidu.com?name=jhh&age=20";

//将网址解析成一个Url对象
var obj = url.parse(href,true);
console.log(obj);

//获取Url对象中的query对象
var query = obj.query;
console.log("queryName:"+query.name);
console.log("queryAge:"+query.age);

2.path模块:

//引入path模块
var p = require("path");

//自定义绝对路径
var path = "C:\\jhh\\text\\js";

//去掉最后一层
console.log(p.dirname(path)); //C:\jhh\text

//取最后一层
console.log(p.basename(path)); //js

3.http模块:

//引入http模块
var http = require("http");

//创建web服务器
var server = http.createServer();

//监听请求
server.on("request",function (request, response) {
  console.log("收到用户请求:"+request.method);
  var url = request.url;
  var msg = "";
  if(url == "/"){
    msg = "这是主页"
  }else if(url == "/login"){
    msg = "这是登录页"
  }else {
    msg = "404";
  }
  //解决相应乱码
  response.setHeader("content-type","text/html;charset=utf-8");

  //相应数据
  response.write(msg);

  //结束相应
  response.end();
});

//启动服务器
server.listen(8081,function () {
  console.log("服务器启动")
});

以上这篇nodejs中内置模块fs,path常见的用法说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例
Jan 01 NodeJs
NodeJS学习笔记之Http模块
Jan 13 NodeJs
nodejs事件的监听与触发的理解分析
Feb 12 NodeJs
NodeJS使用jQuery选择器操作DOM
Feb 13 NodeJs
浅析Nodejs npm常用命令
Jun 14 NodeJs
NodeJS学习笔记之Module的简介
Mar 24 NodeJs
配置nodejs环境的方法
May 13 NodeJs
详解nodeJS之二进制buffer对象
Jun 03 NodeJs
nodeJS实现路由功能实例代码
Jun 08 NodeJs
nodeJS服务器的创建和重新启动的实现方法
May 12 NodeJs
NodeJS实现同步的方法
Mar 02 NodeJs
nodejs中实现用户注册路由功能
May 20 NodeJs
Nodejs + sequelize 实现增删改查操作
Nov 07 #NodeJs
nodejs+koa2 实现模仿springMVC框架
Oct 21 #NodeJs
nodejs使用Sequelize框架操作数据库的实现
Oct 21 #NodeJs
用Nodejs实现在终端中炒股的实现
Oct 18 #NodeJs
Nodejs在局域网配置https访问的实现方法
Oct 17 #NodeJs
NodeJS开发人员常见五个错误理解
Oct 14 #NodeJs
浅谈vue websocket nodeJS 进行实时通信踩到的坑
Sep 22 #NodeJs
You might like
最贵的咖啡是怎么产生的,它的风味怎么样?
2021/03/04 新手入门
3.从实例开始
2006/10/09 PHP
PHP 七大优势分析
2009/06/23 PHP
修改PHP的memory_limit限制的方法分享
2012/02/21 PHP
MyEclipse常用配置图文教程
2014/09/11 PHP
PHP简单创建压缩图的方法
2016/08/24 PHP
PHP实现json_decode不转义中文的方法
2017/05/20 PHP
JavaScript 拾碎[三] 使用className属性
2010/10/16 Javascript
js/jquery获取文本框输入焦点的方法
2014/03/04 Javascript
使用jQuery实现WordPress中的Ctrl+Enter和@评论回复
2016/05/21 Javascript
打造自己的jQuery插件入门教程
2016/09/23 Javascript
JS基于递归实现倒计时效果的方法
2016/11/26 Javascript
使用Require.js封装原生js轮播图的实现代码
2017/06/15 Javascript
jQuery选择器中的特殊符号处理方法
2017/09/08 jQuery
vue 进阶之实现父子组件间的传值
2019/04/26 Javascript
解决vue elementUI中table里数字、字母、中文混合排序问题
2020/01/07 Javascript
JavaScript canvas基于数组生成柱状图代码实例
2020/03/06 Javascript
[01:53]3.19 DOTA2发布会 现场精彩Coser表演
2014/03/25 DOTA
[01:21]辉夜杯战队访谈宣传片—CDEC
2015/12/25 DOTA
Python中使用PyHook监听鼠标和键盘事件实例
2014/07/18 Python
python中引用与复制用法实例分析
2015/06/04 Python
python3实现UDP协议的服务器和客户端
2017/06/14 Python
Python实现简单求解给定整数的质因数算法示例
2018/03/25 Python
python实现控制台打印的方法
2019/01/12 Python
java判断三位数的实例讲解
2019/06/10 Python
Django中如何使用sass的方法步骤
2019/07/09 Python
使用python模拟命令行终端的示例
2019/08/13 Python
Python3交互式shell ipython3安装及使用详解
2020/07/11 Python
全球最大的在线橄榄球商店:Lovell Rugby
2018/05/20 全球购物
求职者简历中的自我评价
2013/10/20 职场文书
毕业生的求职信范文分享
2013/12/04 职场文书
《落花生》教学反思
2014/02/25 职场文书
城管执法人员纪律作风整顿思想汇报
2014/09/13 职场文书
共产党员批评与自我批评
2014/10/15 职场文书
2015年感恩父亲节活动策划方案
2015/05/05 职场文书
合作协议书格式范本
2016/03/21 职场文书