Como converter &str para &[u8] em Rust?
Olá a todos! Comecei a estudar Rust recentemente e me deparei com um problema que parece simples, mas não consigo encontrar a solução correta. Preciso passar uma string para uma função que espera um slice de bytes `&[u8]`. Por exemplo, estou escrevendo um programa simples para trabalhar com arquivos: quero escrever uma string em um arquivo usando `write`, mas ela aceita `&[u8]`, enquanto eu tenho `&str`.
Aqui está meu código:
```rust
use std::fs::File;
use std::io::Write;
fn main() {
let s = "Olá, mundo!";
let mut file = File::create("test.txt").unwrap();
file.write(s).unwrap(); // Erro: expected &[u8], found &str
}
```
Estou recebendo um erro de compilação: `expected &[u8], found &str`. Eu entendo que strings em Rust são UTF-8, e bytes são apenas uma sequência de bytes. Mas como obtenho um slice de bytes a partir de uma string? Eu tentei