Day11 文件系统

<h1>fs模块</h1>
Node.js内置的fs模块就是文件系统模块,负责读写文件。和所有其它JavaScript模块不同的是,fs模块同时提供了异步和同步的方法。

  • 异步读文件
    读取文本文件,文件编码为utf-8,异步读取的时候回调函数接收两个参数。
'use strict'
var fs=require('fs');
fs.readFile('file.txt','utf-8',function(err,data){
  var buf=new Buffer('file.txt','utf-8');
  if(err){
     console.log(err);
  }else{
     console.log(buf);
  }
});

读取一个图片文件

fs.readFile('snail.png',function(err,data){
  if(err){
    console.log(err);
  }else{
    console.log(data.toString('utf-8'));
    console.log(data.length+"bytes");
  }
});
  • 同步读文件
'use strict';

var fs = require('fs');

var data = fs.readFileSync('sample.txt', 'utf-8');
console.log(data);
  • 写文件
'use strict'
var fs=require('fs');
var data='hello,nigel'
fs.writeFile('file.txt',data,function(err){
    if(err){
      console.log(err);
    }else{
      console.log('ok');  
    }
});

*stat
如果我们要获取文件大小,创建时间等信息,可以使用fs.stat(),它返回一个Stat对象,能告诉我们文件或目录的详细信息。

'use strict';

var fs = require('fs');

fs.stat('sample.txt', function (err, stat) {
    if (err) {
        console.log(err);
    } else {
        // 是否是文件:
        console.log('isFile: ' + stat.isFile());
        // 是否是目录:
        console.log('isDirectory: ' + stat.isDirectory());
        if (stat.isFile()) {
            // 文件大小:
            console.log('size: ' + stat.size);
            // 创建时间, Date对象:
            console.log('birth time: ' + stat.birthtime);
            // 修改时间, Date对象:
            console.log('modified time: ' + stat.mtime);
        }
    }
});

改写成对应的同步函数:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 文件系统模块是一个封装了标准的 POSIX 文件 I/O 操作的集合。通过require('fs')使用这个模块。...
    保川阅读 4,300评论 0 0
  • Node.js是目前非常火热的技术,但是它的诞生经历却很奇特。 众所周知,在Netscape设计出JavaScri...
    w_zhuan阅读 9,016评论 2 41
  • 模块化公布自己的模块功能. 其他模块调用另外的模块. 公布方法 如果要输出一个键值对象{},可以利用exports...
    httIsHere阅读 3,532评论 0 0
  • Node.js是目前非常火热的技术,但是它的诞生经历却很奇特。 众所周知,在Netscape设计出JavaScri...
    Myselfyan阅读 9,559评论 2 58
  • 昨天收到布衣老师推荐的钢笔,今早起床打开蒋勋先生的公众号,听着红楼梦,用我的小红书写着文中的一段话,这种感觉...
    墨蘭阅读 1,634评论 2 6

友情链接更多精彩内容