NPM酷库040:jschardet,识别数据编码
NPM酷库,每天两分钟,了解一个流行NPM库。·
在NPM酷库039中,我们认识到了iconv-lite库可以转换任意的字符编码到JavaScript内置的Unicode编码,以便于我们的程序和外部系统友好对接。但是如果我们不知道外部数据的编码,那么我们也就无法调用iconv-lite来进行转换。
jschardet
jschardet 可以识别出一个Buffer数据所使用的编码格式,具体支持的格式包括:
- Big5, GB2312/GB18030, EUC-TW, HZ-GB-2312, and ISO-2022-CN (Traditional and Simplified Chinese)
- EUC-JP, SHIFT_JIS, and ISO-2022-JP (Japanese)
- EUC-KR and ISO-2022-KR (Korean)
- KOI8-R, MacCyrillic, IBM855, IBM866, ISO-8859-5, and windows-1251 (Russian)
- ISO-8859-2 and windows-1250 (Hungarian)
- ISO-8859-5 and windows-1251 (Bulgarian)
- windows-1252
- ISO-8859-7 and windows-1253 (Greek)
- ISO-8859-8 and windows-1255 (Visual and Logical Hebrew)
- TIS-620 (Thai)
- UTF-32 BE, LE, 3412-ordered, or 2143-ordered (with a BOM)
- UTF-16 BE or LE (with a BOM)
- UTF-8 (with or without a BOM)
- ASCII
我们能方便地使用 jschardet 库:
const jschardet = require("jschardet");// "次常用國字標準字體表" in Big5
jschardet.detect("\xa6\xb8\xb1\x60\xa5\xce\xb0\xea\xa6\x72\xbc\xd0\xb7\xc7\xa6\x72\xc5\xe9\xaa\xed");
// { encoding: "Big5", confidence: 0.99 }
参考资料
https://github.com/aadsm/jsch...
NPM酷库040:jschardet,识别数据编码相关推荐
- NPM酷库:dotenv,从文件加载环境变量
NPM酷库,每天两分钟,了解一个流行NPM库.· 我们经常需要Node.js程序运行时加载不同的配置,比如开发环境和生产环境的数据数据库配置就可能不一样,使用 process.env.DB_HOST ...
- NPM酷库:dateformat 时间字符串格式化
NPM酷库,每天两分钟,了解一个流行NPM库. JavaScript中Date内置对象的toString() 方法可以将时间对象转换为字符串,但是转换后的格式是这个样子的: Thu Feb 01 20 ...
- NPM酷库:uuid,生成随机ID
NPM酷库,每天两分钟,了解一个流行NPM库. 在中心化应用中,数据记录的ID往往是数据库生成的自增ID,但是在分布式应用中,就会存在一些问题: 保存数据之前就需要给数据标识ID 数据规模超级大,中央 ...
- NPM酷库:cheerio,服务端jQuery接口实现
NPM酷库,每天两分钟,了解一个流行NPM库. jQuery 是前端DOM操作的利器,我们通过jQuery的接口可以方便地访问.修改DOM树中的节点和内容. 有时,在Node.js服务端,我们也需要类 ...
- php 数字货币格式化,NPM酷库:accounting,格式化数字和货币
NPM酷库,每天两分钟,了解一个流行NPM库.· 上次,我们了解到如何使用numeral库格式化数字.今天我们继续认识另外一个用来格式化数字的库accounting. accounting accou ...
- NPM酷库:numeral,格式化数字
NPM酷库,每天两分钟,了解一个流行NPM库.· JavaScript Core 并没有提供足够的数字变量格式化方式,而我们经常需要这样的操作,比如给数字加单位等,虽然需求简单,但是写起来还是要费一些 ...
- NPM酷库:globby,增强版的glob
NPM酷库,每天两分钟,了解一个流行NPM库. 昨天,我们学习了一个新库 glob,用于模式匹配目录文件.今天,我们要了解的globby,是基于 glob,并进一步得到了增强了功能. globby 特 ...
- NPM酷库045:js-yaml,读写YAML
NPM酷库,每天两分钟,了解一个流行NPM库.· 在NPM酷库044中,我们了解到了相对于JSON格式更加易于编写和维护的JSON5,今天我们继续学习另外一个更加简单易读的数据格式YAML. 下方就是 ...
- NPM酷库:ip,IP地址处理
NPM酷库,每天两分钟,了解一个流行NPM库.· 今天我们来了解一个专门用来处理IP地址的库:ip,ip库能够获取本机IP地址.比较.转换.掩码/子网计算等各种和网络IP相关的操作: const ip ...
最新文章
- 机器学习算法加强——回归
- 计算机视觉应用的简称,计算机视觉应用之图像检索任务简单介绍
- ai边缘平滑_华为P40的多帧曝光AI智能处理,逆光也能无法阻挡你的美
- 第四范式陈雨强:做机器学习平台天然就是新基建丨新基建50人
- 如何兼容自训练与预训练:更高效的半监督文本分类模型
- 汽车穿越沙漠的算法问题(反推法)
- 架构 | 微服务架构下如何解耦,对于已经紧耦合下如何重构?
- RDD的几种创建方式
- Unity AssetBundle内存管理相关问题
- ORM框架greenDao 2 (用于了解旧版本的使用方法,目前最新版本为3.2.2,使用注释的方式来生成)...
- 2020 年开发者生态报告:Python超越Java,Go、Kotlin强势崛起
- c++数字转化为字符串、字符串转换为数字
- H265框架编码流程(一)
- 在线教育系统源码 知识付费系统源码 网络直播源码
- 事业单位资产管理系统广西某单位案例:实现资产动态全过程管理
- 搜狗输入法用户id非法,表情包无法搜到图片,显示异常.......
- 图数据库入门教程-深入学习Gremlin(1):图基本概念与操作
- 【NOIP2017】跳房子
- 学习js 正则表达式
- MTK6592的modem-1.ubuntu14.04下的编译烧写及调试
热门文章
- linux系统USB端口序号绑定,相同或不同设备厂家都可
- java笔记 自己用
- 固定资产会计处理过程
- [绍棠] iOS设置Label上显示不同字体大小和字体颜色
- DM8(达梦数据库)基于建库SQL生成ER图,基于ER图生成数据库文档
- 【 D3.js 入门系列 --- 10 】 地图的绘制
- html+css+布局从入门到精通,CSS+DIV网页样式布局实战从入门到精通 中文pdf扫描版[48MB]...
- 数值分析MOOC期中考试题目及答案(后十题)
- 南油 机器人_机器人创客-作文
- 信安易卫士1.33版更新及本人设置示例