⌘K

Icon LinkBytes

在 Fuel 中,称为 Bytes 的类型表示紧密打包的字节集合。Rust SDK 将 Bytes 表示为 Bytes(Vec<u8>)。以下是在合约调用中使用 Bytes 的示例:

let bytes = Bytes(vec![40, 41, 42]);
 
contract_methods.accept_bytes(bytes).call().await?;

如果您有一个十六进制值作为字符串,并希望将其转换为 Bytes,可以使用 from_hex_str 来实现:

let hex_str = "0101010101010101010101010101010101010101010101010101010101010101";
 
let bytes = Bytes::from_hex_str(hex_str)?;
 
assert_eq!(bytes.0, vec![1u8; 32]);
 
// With the `0x0` prefix
let hex_str = "0x0101010101010101010101010101010101010101010101010101010101010101";
 
let bytes = Bytes::from_hex_str(hex_str)?;
 
assert_eq!(bytes.0, vec![1u8; 32]);