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 相关文章推荐
location.href语句与火狐不兼容的问题
Jul 04 Javascript
jQuery中[attribute]选择器用法实例
Dec 31 Javascript
纯js代码实现简单计算器
Dec 02 Javascript
JS复制对应id的内容到粘贴板(Ctrl+C效果)
Jan 23 Javascript
详解AngularJS1.x学习directive 中‘& ’‘=’ ‘@’符号的区别使用
Aug 23 Javascript
nuxt.js 缓存实践
Jun 25 Javascript
开发用到的js封装方法(20种)
Oct 12 Javascript
浅谈laytpl 模板空值显示null的解决方法及简单的js表达式
Sep 19 Javascript
Vue列表如何实现滚动到指定位置样式改变效果
May 09 Javascript
antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中操作
Aug 06 Javascript
vue 数字翻牌器动态加载数据
Apr 20 Vue.js
element tree树形组件回显数据问题解决
Aug 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
node.js中的http.response.setHeader方法使用说明
Dec 14 #Javascript
node.js中的http.response.removeHeader方法使用说明
Dec 14 #Javascript
You might like
把从SQL中取出的数据转化成XMl格式
2006/10/09 PHP
php下通过POST还是GET来传值
2008/06/05 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
2011/05/24 PHP
PHP面向对象类型约束用法分析
2019/06/12 PHP
Javascript中eval函数的使用方法与示例
2007/04/09 Javascript
js加解密 脚本解密
2008/02/22 Javascript
基于JQuery的6个Tab选项卡插件
2010/09/03 Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
2015/01/06 Javascript
jQuery实现用户输入自动完成功能
2017/02/13 Javascript
JavaScript中各数制转换全面总结
2017/08/21 Javascript
信息滚动效果的实例讲解
2017/09/18 Javascript
微信小程序之swiper滑动面板用法示例
2018/12/04 Javascript
微信小程序利用swiper+css实现购物车商品删除功能
2019/03/06 Javascript
Vue项目history模式下微信分享爬坑总结
2019/03/29 Javascript
微信小程序swiper禁止用户手动滑动代码实例
2019/08/23 Javascript
在Python中操作字典之clear()方法的使用
2015/05/21 Python
Python之多线程爬虫抓取网页图片的示例代码
2018/01/10 Python
Python 动态变量名定义与调用方法
2020/02/09 Python
matlab中imadjust函数的作用及应用举例
2020/02/27 Python
Python网络爬虫信息提取mooc代码实例
2020/03/06 Python
CSS3截取字符串实例代码【推荐】
2018/06/07 HTML / CSS
image-set实现Retina屏幕下图片显示详细介绍
2012/12/24 HTML / CSS
HTML5中图片之间的缝隙完美解决方法
2017/07/07 HTML / CSS
Monnier Frères美国官网:法国知名奢侈品网站
2016/11/22 全球购物
美国排名第一的葡萄酒俱乐部:Firstleaf Wine Club
2020/01/02 全球购物
Java里面Pass by value和Pass by Reference是什么意思
2016/05/02 面试题
信号量和自旋锁的区别?如何选择使用?
2015/09/08 面试题
计算机专业个人求职信范例
2013/09/23 职场文书
先进集体获奖感言
2014/02/13 职场文书
大龄毕业生求职别忘职业规划
2014/03/11 职场文书
个人工作表现评价材料
2014/09/21 职场文书
领导班子三严三实对照检查材料
2014/09/25 职场文书
个人租房协议书范本
2014/09/30 职场文书
目标责任书格式范文
2015/05/11 职场文书
保护环境建议书作文500字
2015/09/14 职场文书
python tqdm用法及实例详解
2021/06/16 Python