使用node中的iconv-lite实现对“gbk”格式的转码
Posted 明明一颗大白菜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用node中的iconv-lite实现对“gbk”格式的转码相关的知识,希望对你有一定的参考价值。
在window中,gbk和utf-8是最常见的两种格式,但是我们在显示的时候往往需要将GBK转换为UTF-8,我现在有一个同步读取文件的操作:
const fs = require(‘fs‘); const path = require(‘path‘); const buffer = fs.readFileSync(path.join(__dirname, ‘../lyrics/友谊之光.lrc‘));
.lrc里面的内容是gbk格式的乱码,那我该怎么做呢,有人可能会想到在readFileSync里面加一个“utf8”的属性,但是结果却是差强人意的,在这里我们需要引进一个名叫iconv-lite的node插件,完整代码如下:
const fs = require(‘fs‘); const path = require(‘path‘); // 将文本读取到一个buffer中 const buffer = fs.readFileSync(path.join(__dirname, ‘../lyrics/友谊之光.lrc‘)); // 由于Windows下文件默认编码为GBK所以需要通过 const iconv = require(‘iconv-lite‘); const content2 = iconv.decode(buffer,‘gbk‘); console.log(content2);
以上是关于使用node中的iconv-lite实现对“gbk”格式的转码的主要内容,如果未能解决你的问题,请参考以下文章