【问题标题】:nodejs get file character encodingnodejs获取文件字符编码
【发布时间】:2016-08-15 02:41:12
【问题描述】:

如何找出给定文本文件的字符编码?

var inputFile = "filename.txt";
var file = fs.readFileSync(inputFile); 
var data = new Buffer(file, "ascii");
var fileEncoding = some_clever_function(file);
if (fileEncoding !== "utf8") {
    // do something
}

谢谢

【问题讨论】:

    标签: node.js character-encoding


    【解决方案1】:

    前面提到的模块也适用于我。或者,您可以查看我目前正在使用的detect-file-encoding-and-language

    安装:

    $ npm install detect-file-encoding-and-language
    

    用法:

    // index.js
    
    const languageEncoding = require("detect-file-encoding-and-language");
    
    const pathToFile = "/home/username/documents/my-text-file.txt"
    
    languageEncoding(pathToFile).then(fileInfo => console.log(fileInfo));
    // Possible result: { language: japanese, encoding: Shift-JIS, confidence: { language: 0.97, encoding: 1 } }
    

    【讨论】:

      【解决方案2】:

      您可以尝试使用外部模块,例如https://www.npmjs.com/package/detect-character-encoding

      【讨论】:

      • 这正是我一直在寻找的,谢谢:)
      猜你喜欢
      • 2019-02-26
      • 2017-06-02
      • 1970-01-01
      • 1970-01-01
      • 2021-04-12
      • 2011-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多