今天使用node.js读取文件的时候出现中文乱码问题。开始想到是编码问题,于是设置utf8但是还是不生效的,最后发现原来文件格式也得是utf8格式。
总结:
1、读取文件必须是utf-8格式文件
2、node.js设置utf8
代码:
var fs = require('fs'); var readFile = fs.createReadStream('fs.txt'); // 设置utf8编码 readFile.setEncoding('utf8'); var count = 0; var str = ''; // 读取中... readFile.on('data',function (data) { str += data; count++; }) // 读取结束 readFile.on('end',function () { console.log(str); console.log(count); }) // 读取异常 readFile.on('err',function (data) { console.log(err); })
本文作者为gengboxb,转载请注明。