gpt4 book ai didi

node.js - 如何在nodejs中保存返回的protobuf对象?

转载 作者:太空宇宙 更新时间:2023-11-03 22:57:40 24 4
gpt4 key购买 nike

在我的代码中,一个函数返回一个 protobuf 对象,我想将其保存在文件 xyz.pb 中。
当我尝试使用 fs.writefilesync 保存它时,它没有保存它。

它本质上是循环的。因此,我尝试使用circular-json模块保存它,以确认它里面是否有任何东西并且它有数据。

但是,由于我首先使用了circular-json,它没有正确的信息(格式不正确)并且没有用。

如何使用nodejs将此protobuf保存在文件中?

谢谢!

最佳答案

您可以尝试使用流 like mentioned in documentation

如下

const crypto = require('crypto');
const fs = require('fs');
const wstream = fs.createWriteStream('fileWithBufferInside');
// creates random Buffer of 100 bytes
const buffer = crypto.randomBytes(100);
wstream.write(buffer);
wstream.end();

或者您可以将缓冲区转换为 JSON 并将其保存在文件中,如下所示:

const crypto = require('crypto');
const fs = require('fs');
const wstream = fs.createWriteStream('myBinaryFile');
// creates random Buffer of 100 bytes
const buffer = crypto.randomBytes(100);
wstream.write(JSON.stringify(buffer));
wstream.end();

如果您的应用程序逻辑不需要使用同步性质,您不应该使用writeFileSync,因为它会阻止您的代码直到它结束,所以要小心。尝试使用 writeFile 或 Streams 更方便。

关于node.js - 如何在nodejs中保存返回的protobuf对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56148813/

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