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 (十一) 实战表单验证与自动完成提示插件
Feb 23 Javascript
intro.js 页面引导简单用法 分享
Aug 06 Javascript
搭建pomelo 开发环境
Jun 24 Javascript
js实现接收表单的值并将值拼在表单action后面的方法
Nov 23 Javascript
jQuery 获取遍历获取table中每一个tr中的第一个td的方法
Oct 05 Javascript
微信小程序 wx.uploadFile无法上传解决办法
Dec 14 Javascript
微信小程序左右滑动切换页面详解及实例代码
Feb 28 Javascript
jQuery实现上传图片前预览效果功能
Aug 03 jQuery
初探JavaScript 面向对象(推荐)
Sep 03 Javascript
jquery获取select选中值的文本,并赋值给另一个输入框的方法
Aug 21 jQuery
VUE前后端学习tab写法实例
Aug 06 Javascript
layui 中select下拉change事件失效的解决方法
Sep 20 Javascript
node.js中的fs.writeFileSync方法使用说明
Dec 14 #Javascript
node.js中的fs.writeFile方法使用说明
Dec 14 #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
You might like
PHP实现电商订单自动确认收货redis队列
2017/05/17 PHP
ThinkPHP 在阿里云上的nginx.config配置实例详解
2017/10/11 PHP
php的对象传值与引用传值代码实例讲解
2021/02/26 PHP
两个DIV等高的JS的实现代码
2007/12/23 Javascript
javascript中自定义对象的属性方法分享
2013/07/12 Javascript
JS获取select-option-text_value的方法
2013/12/26 Javascript
jQuery.holdReady()方法用法实例
2014/12/27 Javascript
js对象继承之原型链继承实例
2015/01/10 Javascript
Node.js中如何合并两个复杂对象详解
2016/12/31 Javascript
Vue学习笔记进阶篇之函数化组件解析
2017/07/21 Javascript
Vue-resource拦截器判断token失效跳转的实例
2017/10/27 Javascript
详细分析vue响应式原理
2020/06/22 Javascript
不依任何赖第三方,单纯用vue实现Tree 树形控件的案例
2020/09/21 Javascript
python 动态获取当前运行的类名和函数名的方法
2014/04/15 Python
python中List的sort方法指南
2014/09/01 Python
python检测远程端口是否打开的方法
2015/03/14 Python
Python的Django框架可适配的各种数据库介绍
2015/07/15 Python
python中利用Future对象异步返回结果示例代码
2017/09/07 Python
wxpython实现图书管理系统
2018/03/12 Python
python的pandas工具包,保存.csv文件时不要表头的实例
2018/06/14 Python
python 实现一次性在文件中写入多行的方法
2019/01/28 Python
人工神经网络算法知识点总结
2019/06/11 Python
python 图像的离散傅立叶变换实例
2020/01/02 Python
Pytorch DataLoader 变长数据处理方式
2020/01/08 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
2020/07/28 Python
一些关于python 装饰器的个人理解
2020/08/31 Python
Python爬取酷狗MP3音频的步骤
2021/02/26 Python
canvas实现高阶贝塞尔曲线(N阶贝塞尔曲线生成器)
2018/01/10 HTML / CSS
美国眼镜在线零售商:Dualens
2019/12/07 全球购物
小学生2014国庆节演讲稿:祖国在我心中
2014/09/21 职场文书
2014年大学生社会实践自我鉴定
2014/09/26 职场文书
销售助理岗位职责
2015/02/11 职场文书
廉洁自律个人总结
2015/02/14 职场文书
户外拓展训练感想
2015/08/07 职场文书
Python基础之pandas数据合并
2021/04/27 Python