【发布时间】:2021-12-24 03:45:01
【问题描述】:
我希望在 Node.js 中将字节数组转换为编码的 UFT8。在 Python 中,我使用 bytes() 方法进行转换,但在 Node 中找不到类似的函数。
一个示例输入是[0, 1, 66, 119, 208],理想情况下它会返回\x00\x01Bw\xd0
【问题讨论】:
标签: javascript node.js arrays utf-8
我希望在 Node.js 中将字节数组转换为编码的 UFT8。在 Python 中,我使用 bytes() 方法进行转换,但在 Node 中找不到类似的函数。
一个示例输入是[0, 1, 66, 119, 208],理想情况下它会返回\x00\x01Bw\xd0
【问题讨论】:
标签: javascript node.js arrays utf-8
如今的 Node.js 几乎遵循浏览器标准,因此 TextDecoder https://developer.mozilla.org/en-US/docs/Web/API/TextDecoder/TextDecoder 是节点的一部分。
所以下面的代码可以在浏览器或节点中运行。
const r = new TextDecoder().decode(new Uint8Array([0, 1, 66, 119, 208]));
console.log(r);
console.log(encodeURI(r));
console.log(JSON.stringify(r));
问题是询问如何将字节转换为 utf-8。以上就是这样做的。
在编码兼容 C 字符串之后,OP 更多-> 这个存储库看起来应该可以解决问题.. https://github.com/harold4/node-string-escape-for-cpp/blob/master/index.js
【讨论】:
\u0000\u0001Bw�。我怎样才能从那个转到\x00\x01Bw\xd0