gpt4 book ai didi

javascript - 缓冲区长度小于预期

转载 作者:行者123 更新时间:2023-11-29 21:46:28 25 4
gpt4 key购买 nike

我正在从一长串十六进制创建一个缓冲区,但出现一些大小不匹配的情况(当我尝试解密它时)。当我运行以下代码时果然:

var hexData = fs.readFileSync(fileName).toString().trim();
var bufferData = new Buffer(hexData, 'hex');

console.log(Buffer.byteLength(hexData, 'hex'));
console.log(bufferData.length);

我的输出是:

232548

30

为什么没有将整个字符串加载到缓冲区中?

编辑:我注意到我很傻,应该这样做

var bufferData = fs.readFileSync(fileName, 'hex');

但是 that 的长度是 930194!

最佳答案

假设您在构建 bufferData 时指的是 hexData 而不是 dataBuffer.byteLength 似乎很乐意接受格式错误的十六进制,而 Buffer 构造函数会将其从缓冲区中删除。考虑:

> Buffer.byteLength('ff00junk', 'hex')
4
> var b = new Buffer('ff00junk', 'hex')
> b.length
2
> b
<Buffer ff 00>

也许您的文件包含无效的十六进制?

关于javascript - 缓冲区长度小于预期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31028007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com