node.js读取文件中文乱码问题

来源:互联网 发布:网络骂人挨打 编辑:程序博客网 时间:2024/05/22 17:19

node.js读取文件中文乱码问题

出现乱码原因:

在windows中,默认的中文编码方式是根据系统的locale决定的,中文系统中的默认的编码方式为gb2312而不是utf-8

解决方法:

  • 如果读取的文件在本地,将读取的源文件格式存储为utf8编码格式,读取源文件的js文件也存储为utf-8编码格式,就可以避免中文乱码显示
  • 若读取的文件不在本地,我们可以引入一个模块—-纯Jvascript转换编码的模块icon-lite,该模块可以实现windows的转换,通过npm可以安装此模块,bufferhelper是一个操作buffer的加强类

代码

npm install iconv-lite
npm install bufferhelper

//同步读取
var data = fs.readFileSync(“input.txt”);
var buff = new Buffer(data,’binary’);
var strr = iconv.decode(buff,’gbk’);
console.log(“同步读取:”+strr);

解决思路:读取文件->按二进制编码->再按utf-8编码

原创粉丝点击