JS和文本编码

时间:2016-05-31 09:26:22

标签: javascript node.js encoding

我有一个带有é等重音字符的文本文件。我使用File Encoding Checker,看起来该文件被编码为windows-1252。 我用以下JS和node.js代码读取文件:

fs.readFile('frenchVerbsList.txt','utf-8', function(err, data) {
    if (err) {
        return console.log("ERROR here!: " + err);
    }
    frenchWords = data.split('\r\n');
    console.log(frenchWords);
});

console.log语句的输出显示问号而不是重音字符。 发生了什么事?

1 个答案:

答案 0 :(得分:1)

节点仅支持某些encodingsroot@localhost:playground > insert into comments (id) values (null); Query OK, 1 row affected (0.00 sec) root@localhost:playground > select * from comments; +----+-----------+ | id | parent_id | +----+-----------+ | 0 | 0 | | 1 | 0 | +----+-----------+ 2 rows in set (0.00 sec) 不属于它。您需要将编码转换为例如encoding,例如public class DatabaseConnection : DbConnection { ... public override void Close() { // Some stuff } // No Dispose method } using(var db = new DatabaseConnection()) { // Some processing }

与此相似,但尚未经过测试

public class DatabaseConnection : DbConnection, IDisposable
{
    ... 
    public override void Close()
    {
        // Some stuff
    }   

    public new void Dispose()
    {
        Close();
        base.Dispose();
        GC.SuppressFinalize(this);
    }
}

using(var db = new DatabaseConnection())
{
    // Some processing
}