码迷,mamicode.com
首页 > Web开发 > 详细

nodejs 获取文件的编码方式

时间:2015-08-18 15:39:29      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:

使用nodejs获取文件夹内文件的编码方式:使用jschardet模块。

下面的代码还有问题,没有添加结束的语句,没有判断应该在哪执行res.send()。

res.send()不能放在forEach后面,因为还会调用explorer,会二次输出send,出错。

 

var fs = require(‘fs‘);
    var jschardet = require(‘jschardet‘);
    util = require(‘util‘);
    path = "D:/node/temp/public";
    var data = [];

    function explorer(path){
        fs.readdir(path, function(err, files){
            //err 为错误 , files 文件名列表包含文件夹与文件
            if(err){
                console.log(‘error:\n‘ + err);
                return;
            }
            var a = 0;

            files.forEach(function(file){

                fs.stat(path + ‘/‘ + file, function(err, stat){
                    if(err){console.log(err); return;}
                    if(stat.isDirectory()){                 
                        // 如果是文件夹遍历
                        explorer(path + ‘/‘ + file);
                    }else{
                        // 读出所有的文件
                        var str = fs.readFileSync(path + ‘/‘ + file);
                        var result = jschardet.detect(str);
                        var item = {};
                        item.filename = path + ‘/‘ + file;
                        item.encoding = result.encoding;
                        item.confidence = result.confidence;
                        item.source = path;

                        console.log(‘编码方式:‘+result.encoding+"; "+result.confidence);
                        console.log(‘文件名:‘ + path + ‘/‘ + file);
                        data.push(item);
                    }               
                });
                
            });
        });
    }

explorer(path);

  

nodejs 获取文件的编码方式

标签:

原文地址:http://www.cnblogs.com/wang-jing/p/4739345.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!