如何在 Rust 中将 mongodb::Bson::Document 转换为字节数组 (Vec<u8>)

问题描述 投票:0回答:1

我正在尝试通过 Websocktes 在 c# 和 Rust 之间发送 Bson 对象,使用此代码将 byte[] 转换为 Rust 中的 mongodb::bson::Document。

if msg.is_binary() {
   let mut bin = std:::io::Cursor::new(msg.into_data());
   let doc = mongodb::bson::Document::from_reader(&mut bin); 
}

这适用于来自 c# MongoDB.Bson.ToBson() 的 byte[]

但我想知道如何做相反的事情。 我如何将 mongodb::bson::Document 转换为 Vec 字节数组,以便我可以解析它,例如:C# 中的 BsonDocument.ReadFrom()。

arrays mongodb rust bson
1个回答
0
投票

答案是:

let doc = doc! {"key": "value"};
let mut byte_array : Vec<u8> = vec![];
doc.to_writer(&mut byte_array);
/// byte_array is your BsonDocument as Vec<u8>

代表提问者发表

© www.soinside.com 2019 - 2024. All rights reserved.