¿Cómo imprimir un slice u8 en hexadecimal en Rust?
¡Hola, colegas! Soy nuevo en Rust y estoy tratando de entender cómo mostrar datos de bytes. Tengo un slice `&[u8]`, por ejemplo, un array de bytes obtenido después de leer un archivo o hacer un hash. Necesito imprimirlo en la consola como una cadena hexadecimal familiar, como se hace en otros lenguajes (por ejemplo, `binascii.hexlify` en Python o `%02x` en C).
El problema es que un simple `println!("{:?}", slice)` imprime algo como `[72, 101, 108, 108, 111]` — son números decimales, pero necesito una cadena como `48656c6c6f`. He intentado usar `{:X}` o `{:02x}` en la cadena de formato, pero esto no funciona directamente para slices.
Aquí hay un ejemplo de código que tengo:
```rust
fn main() {
let data: &[u8] = &[72, 101, 108, 108, 111]; // "Hello" en ASCII
// ¿Cómo imprimir data como "48656c6c6f"?
println!("{:?}", data); // Imprime [72, 101, 108, 108, 111]
}
```
Sé que se puede escribir un bucle y formatear cada byte manualmente, pero parece engorroso. ¿Hay algo en la biblioteca estándar
No answers yet.
Inicia sesión para dejar una respuesta