node.js中的fs.writeFile方法使用说明

 更新时间:2014年12月14日 11:11:24   投稿:junjie  
这篇文章主要介绍了node.js中的fs.writeFile方法使用说明,本文介绍了fs.writeFile的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下

方法说明:

以异步的方式将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);
    }
  });
};

相关文章

  • Node.js重新刷新session过期时间的方法

    Node.js重新刷新session过期时间的方法

    在Node.js中,我们通常使用express-session这个包来使用和管理session,保存服务端和客户端浏览器之间的会话状态。那如何才能实现当用户刷新当前页面或者点击页面上的按钮时重新刷新session的过期时间呢,接下来通过本文一起学习吧
    2016-02-02
  • Egret引擎开发指南之创建项目

    Egret引擎开发指南之创建项目

    Egret Engine(白鹭引擎)是一款使用TypeScript语言构建的开源免费的移动游戏引擎。白鹭引擎的核心定位是开放,高效,优雅。通过它,你可以快速地创建HTML5类型的移动游戏,也可以将游戏项目编译输出成为目标移动平台的原生游戏应用。
    2014-09-09
  • Nodejs中的this详解

    Nodejs中的this详解

    本文给大家汇总介绍了下nodejs中的this,nodejs中的this和在浏览器中javascript中的this还是有很大的差异的,小伙伴们可以研究下
    2016-03-03
  • Node.js+jade抓取博客所有文章生成静态html文件的实例

    Node.js+jade抓取博客所有文章生成静态html文件的实例

    下面小编就为大家带来一篇Node.js+jade抓取博客所有文章生成静态html文件的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 使用NVM实现不同nodejs版本的自由切换

    使用NVM实现不同nodejs版本的自由切换

    在工作中,我们可能需要同时进行多个不同NodeJS版本的项目开发,这种情况下,对于维护多个版本的node将会是一件非常麻烦的事情,NVM就是为解决这个问题而产生的,本文给出了下载、安装及使用方法,需要的朋友可以参考下
    2024-02-02
  • electron demo项目npm install安装失败的解决方法

    electron demo项目npm install安装失败的解决方法

    下面小编就为大家分享一篇electron demo项目npm install安装失败的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • NodeJs的fs读写删除移动监听

    NodeJs的fs读写删除移动监听

    这篇文章主要介绍了NodeJs的fs读写删除移动监听,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-04-04
  • 使用Nodejs开发微信公众号后台服务实例

    使用Nodejs开发微信公众号后台服务实例

    这篇文章主要介绍了使用Nodejs开发微信公众号后台服务实例,在这个实例中,主要使用到了express, wechat, mongodb, monk等模块,需要的朋友可以参考下
    2014-09-09
  • node.js实现回调的方法示例

    node.js实现回调的方法示例

    这篇文章主要介绍了node.js实现回调的方法,结合实例形式分析了node.js实现向回调函数传递参数、闭包的使用及链式回调相关操作技巧,需要的朋友可以参考下
    2017-03-03
  • 详解Nodejs之npm&package.json

    详解Nodejs之npm&package.json

    本篇文章主要介绍了详解Nodejs之npm&package.json,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06

最新评论