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实用示例 缩址还原
Dec 28 NodeJs
nodejs 实现模拟form表单上传文件
Jul 14 NodeJs
nodejs 的 session 简单使用
Jun 06 NodeJs
Nodejs中 npm常用命令详解
Jul 04 NodeJs
nodejs实例解析(输出hello world)
Jan 03 NodeJs
nodejs进阶(6)—连接MySQL数据库示例
Jan 07 NodeJs
nodejs中模块定义实例详解
Mar 18 NodeJs
详解nodejs微信公众号开发——5.素材管理接口
Apr 11 NodeJs
nodejs简单访问及操作mysql数据库的方法示例
Mar 15 NodeJs
nodejs简单读写excel内容的方法示例
Mar 16 NodeJs
nodejs图片处理工具gm用法小结
Dec 12 NodeJs
Nodejs监听日志文件的变化的过程解析
Aug 04 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
php录入页面中动态从数据库中提取数据的实现
2006/10/09 PHP
PHP中冒号、endif、endwhile、endfor使用介绍
2010/04/28 PHP
用PHP实现小写金额转换大写金额的代码(精确到分)
2012/01/10 PHP
PHP使用CURL获取302跳转后的地址实例
2014/05/04 PHP
PHP对称加密函数实现数据的加密解密
2016/10/27 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
2018/02/06 PHP
PHP实现的ID混淆算法类与用法示例
2018/08/10 PHP
PHP 数组黑名单/白名单实例代码详解
2019/06/04 PHP
通过jquery实现tab标签浏览效果
2007/02/20 Javascript
jQuery中odd选择器的定义和用法
2014/12/23 Javascript
JavaScript+CSS无限极分类效果完整实现方法
2015/12/22 Javascript
使用JSON作为函数的参数的优缺点
2016/10/27 Javascript
AngularJS+Bootstrap实现多文件上传与管理
2016/11/08 Javascript
详解Vue2+Echarts实现多种图表数据可视化Dashboard(附源码)
2017/03/21 Javascript
基于iScroll实现下拉刷新和上滑加载效果
2017/07/18 Javascript
微信小程序云开发使用方法新手初体验
2019/05/16 Javascript
Vue插槽_特殊特性slot,slot-scope与指令v-slot说明
2020/09/04 Javascript
JavaScript前后端JSON使用方法教程
2020/11/23 Javascript
[01:11]辉夜杯战队访谈宣传片—CDEC.Y
2015/12/26 DOTA
在Python中操作日期和时间之gmtime()方法的使用
2015/05/22 Python
Python设置Socket代理及实现远程摄像头控制的例子
2015/11/13 Python
python如何通过twisted实现数据库异步插入
2018/03/20 Python
python控制nao机器人身体动作实例详解
2019/04/29 Python
Python 实现自动登录+点击+滑动验证功能
2020/06/10 Python
用html5的canvas画布绘制贝塞尔曲线完整代码
2013/08/14 HTML / CSS
The North Face北面美国官网:美国著名户外品牌
2018/09/15 全球购物
女方婚礼新郎答谢词
2014/01/11 职场文书
数控专业大学毕业生职业规划范文
2014/02/06 职场文书
生产部岗位职责范文
2014/02/07 职场文书
民主评议政风行风整改方案
2014/09/17 职场文书
写给纪委的违纪检讨书
2015/05/05 职场文书
早会开场白台词大全
2015/06/01 职场文书
大学生村官入党自传
2015/06/26 职场文书
Canvas如何做个雪花屏版404的实现
2021/09/25 HTML / CSS
Java工作中实用的代码优化技巧分享
2022/04/21 Java/Android
让JavaScript代码更加精简的方法技巧
2022/06/01 Javascript