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 相关文章推荐
ASP中进行HTML数据及JS数据编码函数
Nov 11 Javascript
JAVASCRIPT style 中visibility和display之间的区别
Jan 22 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器
Jun 21 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
Jun 14 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
Nov 24 Javascript
Vue异步加载about组件
Oct 31 Javascript
五步轻松实现zTree的使用
Nov 01 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
Jan 25 Javascript
jQuery+koa2实现简单的Ajax请求的示例
Mar 06 jQuery
vue踩坑记录之数组定义和赋值问题
Mar 20 Javascript
浅谈javascript中的prototype和__proto__的理解
Apr 07 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
May 12 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
一键删除顽固的空文件夹 软件下载
2007/01/26 PHP
了解Joomla 这款来自国外的php网站管理系统
2010/03/11 PHP
PHP常用的排序和查找算法
2015/08/06 PHP
我整理的PHP 7.0主要新特性
2016/01/07 PHP
Zend Framework创建自己的动作助手详解
2016/03/05 PHP
JavaScript 继承机制的实现(待续)
2010/05/18 Javascript
初始Nodejs
2014/11/08 NodeJs
Javascript基础教程之数据类型 (字符串 String)
2015/01/18 Javascript
最精简的JavaScript实现鼠标拖动效果的方法
2015/05/11 Javascript
jQuery插件windowScroll实现单屏滚动特效
2015/07/14 Javascript
详解JavaScript编程中正则表达式的使用
2015/10/25 Javascript
javascirpt实现2个iframe之间传值的方法
2016/06/30 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
2016/07/07 Javascript
最原始的jQuery注册验证方式
2016/10/11 Javascript
前端分页功能的实现以及原理(jQuery)
2017/01/22 Javascript
Javascript(es2016) import和require用法和区别详解
2017/08/11 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
2018/06/14 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
理解Python中的With语句
2016/03/18 Python
Python算术运算符实例详解
2017/05/31 Python
在django中使用自定义标签实现分页功能
2017/07/04 Python
Python 由字符串函数名得到对应的函数(实例讲解)
2017/08/10 Python
浅谈Python对内存的使用(深浅拷贝)
2018/01/17 Python
pybind11和numpy进行交互的方法
2019/07/04 Python
python实现多进程通信实例分析
2019/09/01 Python
Python中生成一个指定长度的随机字符串实现示例
2019/11/06 Python
TensorBoard 计算图的可视化实现
2020/02/15 Python
使用bandit对目标python代码进行安全函数扫描的案例分析
2021/01/27 Python
Python环境搭建过程从安装到Hello World
2021/02/05 Python
HTML5自定义mp3播放器源码
2020/01/06 HTML / CSS
英国简约舒适女装品牌:Great Plains
2018/07/27 全球购物
机关保密承诺书
2014/06/03 职场文书
应聘护士求职信
2014/07/21 职场文书
小学生感恩父母演讲稿
2014/08/28 职场文书
2015年乡镇工作总结范文
2015/04/22 职场文书
居住证明范文
2015/06/17 职场文书