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 相关文章推荐
jQuery帮助之CSS尺寸(五)outerHeight、outerWidth
Nov 14 Javascript
setTimeout函数兼容各主流浏览器运行执行效果实例
Jun 13 Javascript
jQuery如何取id有.的值一般的方法是取不到的
Apr 18 Javascript
js和jquery如何获取图片真实的宽度和高度
Sep 28 Javascript
Jquery对select的增、删、改、查操作
Feb 06 Javascript
JavaScript的RequireJS库入门指南
Jul 01 Javascript
JavaScript File API实现文件上传预览
Feb 02 Javascript
详解Node.js access_token的获取、存储及更新
Jun 20 Javascript
vue-cli3.0 脚手架搭建项目的过程详解
Oct 19 Javascript
react native 仿微信聊天室实例代码
Sep 17 Javascript
flexible.js实现移动端rem适配方案
Apr 07 Javascript
基于JS实现table导出Excel并保留样式
May 19 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
PHP clearstatcache()函数详解
2010/03/02 PHP
PHP 事务处理数据实现代码
2010/05/13 PHP
通过缓存数据库结果提高PHP性能的原理介绍
2012/09/05 PHP
PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID
2016/11/25 PHP
万能的php分页类
2017/07/06 PHP
js中将多个语句写成一个语句的两种方法小结
2007/12/08 Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
2013/01/08 Javascript
jQuery之折叠面板的深入解析
2013/06/19 Javascript
原生Js页面滚动延迟加载图片实现原理及过程
2013/06/24 Javascript
分享2个jQuery插件--jquery.fileupload与artdialog
2014/12/26 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
js实现字符串转日期格式的方法
2015/05/20 Javascript
AngularJS 防止页面闪烁的方法
2017/03/09 Javascript
详解Vue微信公众号开发踩坑全记录
2017/08/21 Javascript
深入理解Node.js中通用基础设计模式
2017/09/19 Javascript
Vue 项目部署到服务器的问题解决方法
2017/12/05 Javascript
bootstrap模态框关闭后清除模态框的数据方法
2018/08/10 Javascript
jquery多级树形下拉菜单的实例代码
2019/07/09 jQuery
微信jssdk踩坑之签名错误invalid signature
2020/05/19 Javascript
vue 实现element-ui中的加载中状态
2020/11/11 Javascript
Python下singleton模式的实现方法
2014/07/16 Python
python+matplotlib实现动态绘制图片实例代码(交互式绘图)
2018/01/20 Python
Python实现账号密码输错三次即锁定功能简单示例
2019/03/29 Python
Python入门Anaconda和Pycharm的安装和配置详解
2019/07/16 Python
Python如何读写二进制数组数据
2020/08/01 Python
html5新增的定时器requestAnimationFrame实现进度条功能
2018/12/13 HTML / CSS
澳大利亚最超值的自行车之家:Reid Cycles
2019/03/24 全球购物
俄罗斯建筑和装饰材料在线商店:Stroilandia
2020/07/25 全球购物
营销与策划专业求职信
2014/06/20 职场文书
高中生第一学年自我鉴定2015
2014/09/28 职场文书
结婚老公保证书
2015/02/26 职场文书
村官个人总结范文
2015/03/03 职场文书
劳动仲裁调解书
2015/05/20 职场文书
员工升职自我评价
2019/03/26 职场文书
通过Qt连接OpenGauss数据库的详细教程
2021/06/23 PostgreSQL
MySQL脏读,幻读和不可重复读
2022/05/11 MySQL