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 相关文章推荐
Add a Formatted Table to a Word Document
Jun 15 Javascript
使用Jquery获取带特殊符号的ID 标签的方法
Apr 30 Javascript
angularjs中的单元测试实例
Dec 06 Javascript
jQuery实现字符串按指定长度加入特定内容的方法
Mar 11 Javascript
jQuery插件slick实现响应式移动端幻灯片图片切换特效
Apr 12 Javascript
浅析js中substring和substr的方法
Nov 09 Javascript
AngularJS指令中的绑定策略实例分析
Dec 14 Javascript
在js代码拼接dom对象到页面上去的模板总结(必看)
Feb 14 Javascript
使用jQuery卸载全部事件的思路详解
Apr 03 jQuery
如何使用vuex实现兄弟组件通信
Nov 02 Javascript
javascript网页随机点名实现过程解析
Oct 15 Javascript
JS面向对象实现飞机大战
Aug 26 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简单静态页生成过程
2008/03/27 PHP
PHP对象递归引用造成内存泄漏分析
2014/08/28 PHP
mysql_escape_string()函数用法分析
2016/04/25 PHP
Linux服务器下PHPMailer发送邮件失败的问题解决
2017/03/04 PHP
用脚本调用样式的几种方法
2006/12/09 Javascript
firefox下input type="file"的size是多大
2011/10/24 Javascript
javascript学习(一)构建自己的JS库
2013/01/02 Javascript
jquery实现微博文字输入框 输入时显示输入字数 效果实现
2013/07/12 Javascript
js 编码转换 gb2312 和 utf8 互转的2种方法
2013/08/07 Javascript
转换字符串为json对象的方法详解
2013/11/29 Javascript
javascript 回到顶部效果的实现代码
2014/02/17 Javascript
ECMAScript6新增值比较函数Object.is
2015/06/12 Javascript
jQuery实现右侧显示可向左滑动展示的深色QQ客服效果代码
2015/10/23 Javascript
基于Jquery代码实现支持PC端手机端幻灯片代码
2015/11/17 Javascript
浅谈javascript中onbeforeunload与onunload事件
2015/12/10 Javascript
vue.js全局API之nextTick全面解析
2017/07/07 Javascript
VUE2.0中Jsonp的使用方法
2018/05/22 Javascript
微信小程序视图容器(swiper)组件创建轮播图
2020/06/19 Javascript
JavaScript的级联函数用法简单示例【链式调用】
2019/03/26 Javascript
js之切换全屏和退出全屏实现代码实例
2019/09/09 Javascript
javascript 构建模块化开发过程解析
2019/09/11 Javascript
[03:58]兄弟们,回来开黑了!DOTA2昔日战友招募宣传视频
2016/07/17 DOTA
Cpy和Python的效率对比
2015/03/20 Python
opencv3/C++ 平面对象识别&透视变换方式
2019/12/11 Python
pyspark 随机森林的实现
2020/04/24 Python
Python中and和or如何使用
2020/05/28 Python
web页面录屏实现
2019/02/12 HTML / CSS
Lampegiganten丹麦:欧洲领先的照明网上商店
2018/04/25 全球购物
获取邓白氏信用报告:Dun & Bradstreet
2019/01/22 全球购物
Nebula美国官网:便携式投影仪
2019/03/15 全球购物
新西兰Bookabach:查找全球度假屋
2020/12/03 全球购物
英文版网络工程师求职信
2013/10/28 职场文书
《陋室铭》教学反思
2014/02/26 职场文书
合作意向书范本
2014/03/31 职场文书
教师民族团结演讲稿
2014/08/27 职场文书
Html5页面播放M4a音频文件
2021/03/30 HTML / CSS