Node.js buffer.transcode

🌙
手机阅读
本文目录结构

Node.js buffer.transcode(source, fromEnc, toEnc) 版本历史

版本 变更
v8.0.0 The source parameter can now be a Uint8Array.
v7.1.0 新增于: v7.1.0
  • source < Buffer> | < Uint8Array> Buffer 或 Uint8Array。
  • fromEnc < string> 当前字符编码。
  • toEnc < string> 目标字符编码。

将指定的 Buffer 或 Uint8Array 从一个字符编码重新编码到另一个字符,并返回新的 Buffer。

如果 fromEnc 或 toEnc 指定了无效的字符编码,或者无法从 fromEnc 转换为 toEnc,则抛出异常。

buffer.transcode() 支持的字符编码有 ‘ascii’、 ‘utf8’、 ‘utf16le’、 ‘ucs2’、 ‘latin1’ 与 ‘binary’。

如果指定的字节序列无法用目标字符编码表示,则转码过程会使用替代的字符。例如:

const buffer = require('buffer');

const newBuf = buffer.transcode(Buffer.from('€'), 'utf8', 'ascii');
console.log(newBuf.toString('ascii'));
// 输出: '?'

因为欧元符号(€)无法在 US-ASCII 中表示,所以在转码 Buffer 时使用 ? 代替。

该属性是在 require(‘buffer’) 返回的 buffer 模块上,而不是在 Buffer 全局变量或 Buffer 实例上。


更多内容请参考:Node.js Buffer 缓冲器,或者通过 点击对应菜单 进行查看;



AXIHE / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

目前重心已经放在研究区块链上面了

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>