node基础:文件系统-文件读取

本文介绍了Node.js中文件读取的基本方法,包括同步和异步读取,并演示了如何使用fs模块的readFile和readFileSync函数。文章还详细解释了如何处理文件不存在等异常情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

node的文件读取主要分为同步读取、异步读取,常用API有fs.readFile、fs.readFileSync。还有诸如更底层的fs.read,以及数据流(stream),后面再总结下咯~

直接上简单的demo,看下同步/异步接口的调用时的区别,以及分别对应的异常处理方式。

至于API说明,可参考node官方文档

/**
 * 文件读取demo,by 程序猿小卡
 */
var fs = require('fs');

/** 文件同步读取 */

// 没有声明encoding,所以返回的是buffer(二进制数据)
var bufferStr = fs.readFileSync('test.txt');
console.log(bufferStr);  // 输出 <Buffer 68 65 6c 6c 6f 0a>

// 声明了encoding,所以返回的是普通字符串
var str = fs.readFileSync('test.txt', {
    encoding: 'utf-8'
});
console.log(str);  // 输出 hello

// 文件读取异常处理:通过try、catch
try{
    var errStr = fs.readFileSync('noneExist.txt');
}catch(err){
    console.log(err.message);  // 输出 ENOENT, no such file or directory 'noneExist.txt'
}


/** 文件异步读取 */

// 无声明encoding
fs.readFile('test.txt', function(err, data){
    if(err){
        console.log('文件读取失败');
    }else{
        console.log(data);  // 输出 <Buffer 68 65 6c 6c 6f 0a>
    }
});

// 声明了encoding
fs.readFile('test.txt', {encoding: 'utf-8'}, function(err, data){
    if(err){
        console.log('文件读取失败');
    }else{
        console.log(data);  // 输出 hello
    }
});

// 异常处理
fs.readFile('noneExist.txt', {encoding: 'utf-8'}, function(err, data){
    if(err){
        console.log('文件读取失败');  // 输出 文件读取失败
    }else{
        console.log(data);
    }
});

 

转载于:https://www.cnblogs.com/chyingp/p/node-guide-file-read.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值