背景:为了把项目中的中文key转换为英文,完成了源文件的转换,转换后的文件在内存里面查看事正常,当根据原文件生成copy的时候,在源文件的最下面会有:
-----------------解决了
之前读取文件用的是把用createReadStream读取的chunk存到一起,然后在用iconv.decode转码;
现在就直接用chunk.tostring拼接起来 注释掉的是之前的方法
、、、
async function read(path, copypath) {
return await new Promise((resolve) => {
let result = fs.createReadStream(path);
result.setEncoding(‘utf8’);
let chunks = [];
result.on(‘data’, (chunk) => {
// chunks.push(chunk);
// size += chunk.length;
str2+=chunk;
});
result.on(‘end’, () => {
// let buf = Buffer.concat(chunks, size);
// str = iconv.decode(buf, ‘utf8’);
resolve(str2);
})
})
}
、、、
检查下编码
buffer 末尾的多个 \0 么
@waitingsong 解决了 但我还要去查下 iconv的issue里面有没有我遇到的问题
@hsiaosiyuan0 解决了 但我还要去查下 iconv的issue里面有没有我遇到的问题
@zuohuadong 解决了 但我还要去查下 iconv的issue里面有没有我遇到的问题