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

简介:

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);
    }
});
复制代码

 


相关文章
|
4月前
|
JavaScript 数据管理
Node.js 文件系统的各种用法和常见场景
Node.js 文件系统的各种用法和常见场景
50 1
|
4月前
|
JSON JavaScript 数据格式
Node.js实现服务器端生成Excel文件(xls格式、xlsx格式文件)并弹出下载文件
Node.js实现服务器端生成Excel文件(xls格式、xlsx格式文件)并弹出下载文件
|
2月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
27 0
|
4月前
|
JavaScript 前端开发
nodejs实现解析chm文件列表,无需转换为PDF文件格式,在线预览chm文件以及目录,不依赖任何网页端插件
nodejs实现解析chm文件列表,无需转换为PDF文件格式,在线预览chm文件以及目录,不依赖任何网页端插件
|
4月前
|
JSON JavaScript API
Node.js(nodejs)对本地JSON文件进行增、删、改、查操作(轻车熟路)
Node.js(nodejs)对本地JSON文件进行增、删、改、查操作(轻车熟路)
|
6月前
|
Kubernetes 容器
k8s指定config文件查看node—2023.02
k8s指定config文件查看node—2023.02
|
3月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)(上)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
29 0
|
5月前
|
Windows
ts-node : 无法加载文件 C:\Users\Dell\AppData\Roaming\npm\ts-node.ps1,因为在此系统上禁止运行脚本。有关详细信息
ts-node : 无法加载文件 C:\Users\Dell\AppData\Roaming\npm\ts-node.ps1,因为在此系统上禁止运行脚本。有关详细信息
|
3月前
|
JavaScript API Windows
Nodejs 文件 与 路径 相关用法实例解析
Nodejs 文件 与 路径 相关用法实例解析
75 0
|
3月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)(下)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
25 0