Node.js获取文件字符编码

8

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

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
}

谢谢

2个回答

6

那正是我一直在寻找的,谢谢 :) - 6bytes

2

之前提到的模块对我也适用。或者你可以看一下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 } }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接