node.js 读取文件
一般用法
var path = require("path");
var fs = require("fs");
//let filePath = path.join(__dirname, "..", "leavemsg");
function run(filePath) {
let str;
fs.readFile(filePath,{encoding:"utf-8"}, function (err, fr) {
//readFile回调函数
if (err) {
console.log(err);
}else {
str = fr;
}
});
return str;
}
以上写法,没有考虑异步,可能会出现一些问题 返回结果可能为空!
注:如果你的处理逻辑在readFile回调函数里面则没有问题!
2、高级用法
const readFile = require("util").promisify(fs.readFile);
async function run(filePath) {
try {
const fr = await readFile(filePath,"utf-8");
return fr;
} catch (err) {
console.log('Error', err);
}
}
这种写法在调用run函数时,会等待readFile读取出内容后再返回!
转自:https://blog.csdn.net/chaoyangsun/article/details/79132163
node.js 读取文件的更多相关文章
- Node.js读取文件内容
原文链接:http://blog.csdn.net/zk437092645/article/details/9231787 Node.js读取文件内容包括同步和异步两种方式. 1.同步读取,调用的是r ...
- node.js 读取文件--createReadStream
createReadStream 是fs模块里面读流的一个方法 这个方法基于fs模块的,所以我们先要引进fs模块 let fs=require("fs"); createReadS ...
- Node.js读取文件相对路径写法注意
首先看一下文件的存放结构: 我们现在希望在上面标记的JS文件里面读取html里面的内容,我们的代码如下: var fs=require("fs"); fs.readFile('te ...
- Node.js读取文件内容并返回值(非异步)
主要解决的问题的,以最近VsCode插件开发为例,每次请求都需要token,而vscode并不支持cookie这样的存储,所以就采用粗暴点办法,存到某个用户目录下并读取. 源码如下: var fs=r ...
- Node.js写文件的三种方法
Node.js写文件的三种方式: 1.通过管道流写文件 采用管道传输二进制流,可以实现自动管理流,可写流不必当心可读流流的过快而崩溃,适合大小文件传输(推荐) var readStream = fs. ...
- 用node.js读写文件
node.js没有二进制数据类型,却提供了类似字节数组的“流“数据类型,着一种数据类型在文件系统模块中频频出现 node.js打开文件 fs = require('fs'); console.log( ...
- 前端使用js读取文件
最近同时问我js能不能读取本地文件: 想起以前看到js读取本地文件的文章,然后自己写了个demo. ps:这有点想Java的IO流,但是又有差别. 首先我们定义一个input标签type=" ...
- jq常用事件(on,blur,focus,change),js/jq等待图片(页面)加载完毕事件,js读取文件
jq常用事件(on,blur,focus,change) // 方法一(推荐) $('.box').on( "click",function() {} ) $('.box').on ...
- electron node.js 实现文件拖动读取文件
css/styles.css .for_file_drop { width: 100%; height: 100px; background-color: blueviolet; } index.ht ...
随机推荐
- 窗口与导航-----Selenium快速入门(十三)
前面所讲的,大部分是WebDriver这个接口以及相关的类的使用.而本文所讲的窗口与导航,也是里面的内容,而且非常简单,目测就能学会. 一.窗口,也就是window,这里的窗口是指浏览器窗口.他的方法 ...
- 博客迁址 xpeng.scorpionstudio.com
这里不再更新!现在博客的正式地址是: http://xpeng.scorpionstudio.com
- SmartUpload工具上传文件步骤
上传文件的步骤1.实例化SmartUpLoad实例 SmartUpload smart = new SmartUpload();2.初始化上传操作 ServletConfig config ...
- gdb的调试常用命令
一.gdb常用的命令 list l 常看源代码 break b 设置断点 b 10(行号) b ...
- 835. Image Overlap
Two images A and B are given, represented as binary, square matrices of the same size. (A binary ma ...
- fastadmin的页面是如何生成的?
第一步: 访问URL http://www.fastadmin.cc/admin/mydir/test/index?addtabs=1 对应的方法是admin模块,controller文件夹下的myd ...
- Aizu 2249Road Construction 单源最短路变形《挑战程序设计竞赛》模板题
King Mercer is the king of ACM kingdom. There are one capital and some cities in his kingdom. Amazin ...
- Swift里字符串(五)Native strings
Native strings have tail-allocated storage, which begins at an offset of nativeBias from the storage ...
- (转) MySQL分区与传统的分库分表
传统的分库分表 原文:http://blog.csdn.net/kobejayandy/article/details/54799579 传统的分库分表都是通过应用层逻辑实现的,对于数据库层面来说,都 ...
- Java之集合(二十三)SynchronousQueue
转载请注明源出处:http://www.cnblogs.com/lighten/p/7515729.html 1.前言 本章介绍阻塞队列SynchronousQueue.之前介绍过LinkedTran ...