每天学习一点点,成功增加一大步

NodeJs 转换 Unicode(UTF8) 编码的中文

NodsJS zhanghui 267℃

很长时间没有回来继续更新博文了,今天在使用 nodeJs 写一个项目时遇到一个情况,而这个情况在日常中也是常见的字符处理,只不过是本人比较少使用 nodeJs 作为后端语言处理业务。所以记录下来也是有必要,日后查寻方便。

问题

在使用 NodeJs 采集其他网站网页时遇到的,在获取源代码后发现里面原来的中文被转成了 Unicode(UTF8) 编码的中文(如:&# [xxx]),这当然不是真正想要的中文实体。如何解决继续往下看。

解决

搜索网络后发现这叫【HTML Entities】 ,可以借助一些模块来转换,比如,html-entities

cnpm i --save html-entities

通过以上安装依赖代码,在项目中引入【html-entities】,然后通过以下的代码示例就可以解决问题

var Entities = require('html-entities').XmlEntities;
entities = new Entities();
var str = '<p>&# [xxx]</p>';

console.log(entities.decode(str));

相关

html-entities GitHub

转载请注明:隨習筆記 » NodeJs 转换 Unicode(UTF8) 编码的中文