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 相关文章推荐
windows系统下简单nodejs安装及环境配置
Jan 08 NodeJs
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
Sep 26 NodeJs
Nodejs实现的一个静态服务器实例
Dec 06 NodeJs
NodeJS使用jQuery选择器操作DOM
Feb 13 NodeJs
在windows上用nodejs搭建静态文件服务器的简单方法
Aug 11 NodeJs
nodejs redis 发布订阅机制封装实现方法及实例代码
Dec 15 NodeJs
nodejs使用express获取get和post传值及session验证的方法
Nov 09 NodeJs
nodejs 简单实现动态html的方法
May 12 NodeJs
nodejs更改项目端口号的方法
May 13 NodeJs
nodejs如何在package.json中设置多条启动命令
Mar 16 NodeJs
Nodejs文件上传、监听上传进度的代码
Mar 27 NodeJs
使用 Koa + TS + ESLlint 搭建node服务器的过程详解
May 30 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
PHP6 mysql连接方式说明
2009/02/09 PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
2013/07/05 PHP
thinkPHP引入类的方法详解
2016/12/08 PHP
jquery实现input输入框实时输入触发事件代码
2014/01/28 Javascript
JavaScript中switch判断容易犯错的一个细节
2014/08/27 Javascript
jquery插件jquery.nicescroll实现图片无滚动条左右拖拽的方法
2015/08/10 Javascript
JS仿京东移动端手指拨动切换轮播图效果
2020/04/10 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
BootStrap 获得轮播中的索引和当前活动的焦点对象
2017/05/11 Javascript
详解Vue.js Mixins 混入使用
2017/09/15 Javascript
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
2018/08/24 Javascript
JavaScript实现飞舞的泡泡效果
2020/02/07 Javascript
Node.js API详解之 string_decoder用法实例分析
2020/04/29 Javascript
JS实现百度搜索框
2021/02/25 Javascript
Python 文件操作实现代码
2009/10/07 Python
Python 字符串操作实现代码(截取/替换/查找/分割)
2013/06/08 Python
python练习程序批量修改文件名
2014/01/16 Python
python获取Linux下文件版本信息、公司名和产品名的方法
2014/10/05 Python
python实现图书管理系统
2018/03/12 Python
详解flask表单提交的两种方式
2018/07/21 Python
Python学习笔记之视频人脸检测识别实例教程
2019/03/06 Python
Django框架实现的分页demo示例
2019/05/25 Python
在PyCharm的 Terminal(终端)切换Python版本的方法
2019/08/02 Python
Python 模拟动态产生字母验证码图片功能
2019/12/24 Python
浅析Python requests 模块
2020/10/09 Python
使用Python提取文本中含有特定字符串的方法示例
2020/12/09 Python
使用javascript和HTML5 Canvas画的四渐变色播放按钮效果
2014/04/10 HTML / CSS
Canvas绘制浮动球效果的示例
2017/12/29 HTML / CSS
Brasty罗马尼亚:购买手表、香水、化妆品、珠宝
2020/04/21 全球购物
国企干部对照检查材料
2014/08/22 职场文书
投资合作意向书范本
2015/05/08 职场文书
聚众斗殴罪辩护词
2015/05/21 职场文书
听证会主持词
2015/07/03 职场文书
网络新闻该怎么写?这些写作技巧你都知道吗?
2019/08/26 职场文书
Tomcat用户管理的优化配置详解
2022/03/31 Servers
python微信智能AI机器人实现多种支付方式
2022/04/12 Python