nodeJS读写文件中文乱码问题整理及计算机文件编码方式科普

本文介绍了一个使用Node.js读取Excel文件并解决中文乱码问题的案例。通过对比不同编码方式(如ANSI、Unicode、UTF-8)的特点,解释了为何需要借助iconv-lite模块来处理GBK或GB2312格式的文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在用node 做一个读取excel文件的项目,后台用mongoDB存储。由于文件默认编码方式是anti,汉字总是无法显示。
网上都说要转成无BOM的utf-8格式,我用notepad++转了,还是没用。后来读文件时我也把编码方式选为‘utf-8’了也不行(后来明白,是我对这里所有的‘设置编码方式’的理解有误,并不是把编码方式‘改’为utf-8的意思)。


最后参考了这三遍文章,问题得到解决。


为什么要使用最后那个模块?

由于Node.js仅支持如下编码:utf8, ucs2, ascii, binary, base64, hex,并不支持中文GBK或GB2312之类的编码,因此如果要读写GBK或GB2312格式的文件的中文内容,必须要用额外的模块:iconv-lite。


ANSI和GBK什么关系?

ANSI包含GBK!阅读ANSI百度百科

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值