首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将64位BigInt写入Buffer?

如何将64位BigInt写入Buffer?
EN

Stack Overflow用户
提问于 2018-07-24 09:24:20
回答 2查看 1.4K关注 0票数 3

是否有可能将64位BigInts写入Buffer in Node.js (10.7+)?

或者我仍然必须在两个操作中完成它?

let buf = Buffer.allocUnsafe(16);
buf.writeUInt32BE(Number(time>>32n),0,true);
buf.writeUInt32BE(Number(time&4294967295n),4,true);

我在the docs中找不到任何有希望的东西,但是还有其他几乎没有文档记录的方法,比如BigInt.asUintN,所以我想我应该问一下。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-27 08:39:02

我刚刚遇到了一个类似的问题(需要构建和编写由41位时间戳、13位节点ID和10位计数器组成的64位ID)。我能够使用buf.writeIntLE()写入缓冲区的最大值是48位。因此,我最终独立地构建/写入了高48位和低16位。如果有更好的方法,我不知道。

票数 1
EN

Stack Overflow用户

发布于 2018-07-24 09:34:43

你已经尝试过这个包了吗?https://github.com/substack/node-bigint#tobufferopts

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51489181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档