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的自定义鼠标提示效果 jquery.toolTip
Nov 14 Javascript
实现web打印的各种方法介绍及实现代码
Jan 09 Javascript
jquery 设置元素相对于另一个元素的top值(实例代码)
Nov 06 Javascript
jQuery中andSelf()方法用法实例
Jan 08 Javascript
AspNet中使用JQuery boxy插件的确认框
May 20 Javascript
Bootstrap栅格系统的使用和理解2
Dec 14 Javascript
BootStrap Table 后台数据绑定、特殊列处理、排序功能
May 27 Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
May 21 Javascript
spring+angular实现导出excel的实现代码
Feb 27 Javascript
Vue监听页面刷新和关闭功能
Jun 20 Javascript
JS实现吸顶特效
Jan 08 Javascript
vue中实现动态生成二维码的方法
Feb 21 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
DISCUZ 论坛管理员密码忘记的解决方法
2009/05/14 PHP
php for 循环语句使用方法详细说明
2010/05/09 PHP
Laravel框架路由配置总结、设置技巧大全
2014/09/03 PHP
thinkphp循环结构用法实例
2014/11/24 PHP
php常用表单验证类用法实例
2015/06/18 PHP
laravel 事件/监听器实例代码
2019/04/12 PHP
javascript 控制弹出窗口
2007/04/10 Javascript
jquery获得下拉框值的代码
2011/08/13 Javascript
自定义的一个简单时尚js下拉选择框
2013/11/20 Javascript
js数组的基本操作(很全自己整理的)
2014/10/16 Javascript
Jquery中基本选择器用法实例详解
2015/05/18 Javascript
jQuery滚动加载图片实现原理
2015/12/14 Javascript
AngularJS的ng Http Request与response格式转换方法
2016/11/07 Javascript
如何处理JSON中的特殊字符
2016/11/30 Javascript
原生js实现打字动画游戏
2017/02/04 Javascript
nodejs mysql 实现分页的方法
2017/06/06 NodeJs
详解jQuery中的isPlainObject()使用方法
2018/02/27 jQuery
element-ui 的el-button组件中添加自定义颜色和图标的实现方法
2018/10/26 Javascript
js html实现计算器功能
2018/11/13 Javascript
ES6顶层对象、global对象实例分析
2019/06/14 Javascript
Javascript文本框脚本实现方法解析
2020/10/30 Javascript
[03:56]还原FTP电影首映式 DOTA2群星拼出遗迹世界
2014/03/26 DOTA
Python深入学习之内存管理
2014/08/31 Python
Python使用poplib模块和smtplib模块收发电子邮件的教程
2016/07/02 Python
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
2017/05/25 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
python使用筛选法计算小于给定数字的所有素数
2018/03/19 Python
Python函数返回不定数量的值方法
2019/01/22 Python
python实现文件批量编码转换及注意事项
2019/10/14 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
2020/05/13 Python
mui几种页面跳转方式对比总结概括
2017/08/18 HTML / CSS
意大利大型购物中心:Oliviero.it
2017/10/19 全球购物
音乐教育感言
2014/03/05 职场文书
学习三严三实心得体会
2014/10/13 职场文书
家庭经济困难证明
2015/06/23 职场文书
《雷雨》教学反思
2016/02/20 职场文书