栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用Node.js读取文本文件?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Node.js读取文本文件?

您将要使用

process.argv
数组访问命令行参数以获取文件名,并使用FileSystem模块(fs)来读取文件。例如:

// Make sure we got a filename on the command line.if (process.argv.length < 3) {  console.log('Usage: node ' + process.argv[1] + ' FILENAME');  process.exit(1);}// Read the file and print its contents.var fs = require('fs')  , filename = process.argv[2];fs.readFile(filename, 'utf8', function(err, data) {  if (err) throw err;  console.log('OK: ' + filename);  console.log(data)});

为了稍微分解一下,

process.argv
通常长度为2,第零个是“节点”解释器,第一个是节点当前正在运行的脚本,其后的项目在命令行中传递。从argv中提取文件名后,就可以使用文件系统函数读取文件并对其内容进行任何操作。用法示例如下所示:

$ node ./cat.js file.txtOK: file.txtThis is file.txt!

[编辑] 正如@wtfprer所提到的那样,使用“

fs.readFile()
”方法可能不是最好的主意,因为它会在将文件的全部内容提供给回调函数之前先对其进行缓冲。这种缓冲可能潜在地使用大量内存,但是更重要的是,它没有利用node.js的核心功能之一-
异步事件I / O。

处理大文件(或任何文件,实际上)的“节点”方法是使用

fs.read()
和处理每个可用的块,因为它们可从操作系统获得。但是,以这种方式读取文件需要您自己(可能)对文件进行增量解析/处理,并且一定数量的缓冲可能是不可避免的。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/382933.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号