node.js中的fs.writeFile方法使用说明


Posted in Javascript onDecember 14, 2014

方法说明:

以异步的方式将data写入文件,文件已存在的情况下,原内容将被替换。

语法:

fs.writeFile(filename, data, [options], [callback(err)])

由于该方法属于fs模块,使用前需要引入fs模块(var fs= require(“fs”) )

接收参数:

filename      (String)            文件名称

data        (String | Buffer)    将要写入的内容,可以使字符串 或 buffer数据。

options        (Object)           option数组对象,包含:

· encoding   (string)            可选值,默认 ‘utf8′,当data使buffer时,该值应该为 ignored。

· mode         (Number)        文件读写权限,默认值 438

· flag            (String)            默认值 ‘w'

callback {Function}  回调,传递一个异常参数err。

例子:

fs.writeFile('message.txt', 'Hello Node', function (err) {

  if (err) throw err;

  console.log('It\'s saved!');

});

源码:

fs.writeFile = function(path, data, options, callback) {

  var callback = maybeCallback(arguments[arguments.length - 1]);

  if (util.isFunction(options) || !options) {

    options = { encoding: 'utf8', mode: 438 /*=0666*/, flag: 'w' };

  } else if (util.isString(options)) {

    options = { encoding: options, mode: 438, flag: 'w' };

  } else if (!util.isObject(options)) {

    throw new TypeError('Bad arguments');

  }

  assertEncoding(options.encoding);

  var flag = options.flag || 'w';

  fs.open(path, options.flag || 'w', options.mode, function(openErr, fd) {

    if (openErr) {

      if (callback) callback(openErr);

    } else {

      var buffer = util.isBuffer(data) ? data : new Buffer('' + data,

          options.encoding || 'utf8');

      var position = /a/.test(flag) ? null : 0;

      writeAll(fd, buffer, 0, buffer.length, position, callback);

    }

  });

};
Javascript 相关文章推荐
Mootools 1.2教程 Fx.Tween的使用
Sep 15 Javascript
JavaScript高级程序设计 阅读笔记(二十) js错误处理
Aug 14 Javascript
javascript实用方法总结
Feb 06 Javascript
JavaScript原生对象之Number对象的属性和方法详解
Mar 13 Javascript
jquery中toggle函数交替使用问题
Jun 22 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
Dec 15 Javascript
微信小程序 跳转传递数据的实例
Jul 06 Javascript
本地存储localStorage用法详解
Jul 31 Javascript
基于jQuery的表单填充实例
Aug 22 jQuery
详解为生产环境编译Angular2应用的方法
Dec 10 Javascript
JS实现旋转木马轮播图
Jan 01 Javascript
node爬取新型冠状病毒的疫情实时动态
Feb 06 Javascript
node.js中的http.response.addTrailers方法使用说明
Dec 14 #Javascript
node.js中的http.response.writeHead方法使用说明
Dec 14 #Javascript
node.js中的http.response.getHeader方法使用说明
Dec 14 #Javascript
node.js中的http.response.write方法使用说明
Dec 14 #Javascript
node.js中的http.response.end方法使用说明
Dec 14 #Javascript
node.js中的http.response.setHeader方法使用说明
Dec 14 #Javascript
node.js中的http.response.removeHeader方法使用说明
Dec 14 #Javascript
You might like
Zerg基本策略
2020/03/14 星际争霸
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
求PHP数组最大值,最小值的代码
2011/10/31 PHP
php实现图片上传、剪切功能
2016/05/07 PHP
PHP设计模式之适配器模式原理与用法分析
2018/04/25 PHP
有关JavaScript的10个怪癖和秘密分享
2011/08/28 Javascript
jquery 定位input元素的几种方法小结
2013/07/28 Javascript
教你用jquery实现iframe自适应高度
2014/06/11 Javascript
对Web开发中前端框架与前端类库的一些思考
2015/03/27 Javascript
JavaScript实战(原生range和自定义特效)简单实例
2016/08/21 Javascript
JavaScript代码里的判断小结
2016/08/22 Javascript
Bootstrap3 Grid system原理及应用详解
2016/09/30 Javascript
JavaScript排序算法动画演示效果的实现方法
2016/10/18 Javascript
AngularJS select加载数据选中默认值的方法
2018/02/28 Javascript
vue 组件高级用法实例详解
2018/04/11 Javascript
ES6之模版字符串的具体使用
2018/05/17 Javascript
解决jQuery使用append添加的元素事件无效的问题
2018/08/30 jQuery
Intellij IDEA搭建vue-cli项目的方法步骤
2018/10/20 Javascript
JS事件绑定的常用方式实例总结
2019/03/02 Javascript
微信小程序scroll-view隐藏滚动条的方法详解
2020/03/25 Javascript
python中的二维列表实例详解
2018/06/19 Python
vue.js实现输入框输入值内容实时响应变化示例
2018/07/07 Python
Django框架 查询Extra功能实现解析
2019/09/04 Python
Python 列表的清空方式
2020/01/13 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
2020/04/14 Python
Python 用__new__方法实现单例的操作
2020/12/11 Python
Python环境搭建过程从安装到Hello World
2021/02/05 Python
HTML5在手机端实现视频全屏展示方法
2020/11/23 HTML / CSS
英国美术用品购物网站:Cass Art
2019/10/08 全球购物
益模软件Java笔试题
2012/03/27 面试题
入团者的自我评价分享
2013/12/02 职场文书
宣传部部长竞选演讲稿
2014/04/26 职场文书
授权委托书
2014/09/17 职场文书
科长个人四风问题整改措施思想汇报
2014/10/13 职场文书
2016年共产党员公开承诺书
2016/03/24 职场文书
springboot集成flyway自动创表的详细配置
2021/06/26 Java/Android