使用FS& NodeJS列出目录中的所有文件及其字符长度

时间:2018-04-10 21:18:42

标签: node.js

我试图创建一个系统,其中对目录中的所有文件计算字符数,同时仍保持与之关联的文件名。

例如,如果名为 votes 的文件夹中有10个文本文件,并且文本文件都名为 [随机数字字符串] .txt (不同对于每个文件),每个文件中有不同数量的字符,我如何收集所有文件的所有文件名和字符数?我知道我会使用 data.length()来查找一个文件的字符数,但有哪些方法可以用几个文件来计算?

由于

1 个答案:

答案 0 :(得分:0)

Node-Cheat可用,您可以点击HERE

进行试用

可能的选项1:

    var fs = require('fs'),
        async = require('async'),
        readMultipleFiles = require('read-multiple-files');

    var dirPath = 'votes/';

    fs.readdir(dirPath, function (err, filesPath) {
        if (err) throw err;
        filesPath = filesPath.map(function (filePath) {
            return dirPath + filePath;
        });
        async.map(filesPath, function (filePath, cb) {
            fs.readFile(filePath, 'utf8', cb);
        }, function (err, results) {
            console.log(results);
        });
    });

可能的选项2:

    fs.readdir(dirPath, function (err, filesPath) {
        if (err) throw err;
        filesPath = filesPath.map(function (filePath) {
            return dirPath + filePath;
        });
        readMultipleFiles(filesPath, 'utf8', function (err, results) {
            if (err)
                throw err;
            console.log(results);
        });
    });