如何从种子生成一个随机字节数组?[重复]

问题描述 投票:-2回答:1

我想从一个自定义的随机数生成器中生成一个UUID。

use uuid::{Builder, Uuid, Variant, Version};
use rand::{Rng, SeedableRng, rngs::StdRng, RngCore};

fn main() {
    let seed = [5u8; 32];
    let mut rng: StdRng = SeedableRng::from_seed(seed);
    let bytes = ???
    let uuid = Builder::from_bytes(bytes)
        .set_variant(Variant::RFC4122)
        .set_version(Version::Random)
        .build();
    println!("{:?}", uuid);
}

我如何获得字节?

rust
1个回答
2
投票

我想我已经做到了。

use rand::{rngs::StdRng, RngCore, SeedableRng};
use uuid::{Builder, Variant, Version};

fn main() {
    let seed = [0u8; 32];
    let mut rng: StdRng = SeedableRng::from_seed(seed);
    let mut bytes = [0u8; 16];
    rng.fill_bytes(&mut bytes);
    let uuid = Builder::from_bytes(bytes)
        .set_variant(Variant::RFC4122)
        .set_version(Version::Random)
        .build();
    println!("{:?}", uuid);
}
© www.soinside.com 2019 - 2024. All rights reserved.