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 相关文章推荐
angularjs中的单元测试实例
Dec 06 Javascript
简化版手机端照片预览组件
Apr 13 Javascript
jQuery中animate动画第二次点击事件没反应
May 07 Javascript
基于jQuery和CSS3制作响应式水平时间轴附源码下载
Dec 20 Javascript
jQuery语法小结(超实用)
Dec 31 Javascript
jQuery实现的指纹扫描效果实例(附演示与demo源码下载)
Jan 26 Javascript
Jquery实现的简单轮播效果【附实例】
Apr 19 Javascript
JavaScript中0和""比较引发的问题
May 26 Javascript
一篇看懂vuejs的状态管理神器 vuex状态管理模式
Apr 20 Javascript
详解Angular CLI + Electron 开发环境搭建
Jul 20 Javascript
基于 Vue 的树形选择组件的示例代码
Aug 18 Javascript
用vite搭建vue3应用的实现方法
Feb 22 Vue.js
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
NT IIS下用ODBC连接数据库
2006/10/09 PHP
不用数据库的多用户文件自由上传投票系统(1)
2006/10/09 PHP
PHP中ADODB类详解
2008/03/25 PHP
Session保存到数据库的php类分享
2011/10/24 PHP
PHP使用Mysql事务实例解析
2014/09/08 PHP
3Z版基于jquery的图片复选框(asp.net+jquery)
2010/04/12 Javascript
Javascript 垃圾收集机制介绍理解
2013/05/14 Javascript
解析jQuery与其它js(Prototype)库兼容共存
2013/07/04 Javascript
JS实现随机数生成算法示例代码
2013/08/08 Javascript
js+css实现的圆角边框TAB选项卡滑动门代码分享(2款)
2015/08/26 Javascript
Bootstrap Paginator分页插件与ajax相结合实现动态无刷新分页效果
2016/05/27 Javascript
JS框架之vue.js(深入三:组件1)
2016/09/29 Javascript
详解vue+css3做交互特效的方法
2017/11/20 Javascript
基于JavaScript 性能优化技巧心得(分享)
2017/12/11 Javascript
Angular6中使用Swiper的方法示例
2018/07/09 Javascript
js的Object.assign用法示例分析
2020/03/05 Javascript
js事件机制----捕获与冒泡机制实例分析
2020/05/22 Javascript
js实现电灯开关效果
2021/01/19 Javascript
python 中的列表解析和生成表达式
2011/03/10 Python
安装docker-compose的两种最简方法
2019/07/30 Python
python性能测量工具cProfile使用解析
2019/09/26 Python
softmax及python实现过程解析
2019/09/30 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
使用openCV去除文字中乱入的线条实例
2020/06/02 Python
python实现PDF中表格转化为Excel的方法
2020/06/16 Python
css3 按钮 利用css3实现超酷下载按钮
2013/03/18 HTML / CSS
HTML5是什么 HTML5是什么意思 HTML5简介
2012/10/26 HTML / CSS
突破canvas语法限制 让他支持链式语法
2012/12/24 HTML / CSS
爱淘宝:淘宝网购物分享平台
2017/04/28 全球购物
记帐员岗位责任制
2014/02/08 职场文书
西式婚礼主持词
2014/03/13 职场文书
消防安全宣传口号
2014/06/10 职场文书
匿名信格式范文
2015/05/27 职场文书
师范生见习总结范文
2015/06/23 职场文书
2015年六年级班主任工作总结
2015/10/15 职场文书
Python 中的 copy()和deepcopy()
2021/11/07 Python