Receitas Rust
Bem-vindo à nossa coleção de receitas práticas em Rust! Cada receita resolve um problema específico com código completo e executável. Se você está procurando como fazer algo em Rust, provavelmente vai encontrar a resposta aqui.
Todas as receitas incluem dependências do Cargo.toml, código completo com main() e exemplos de saída.
Strings
Manipulação de strings é uma das tarefas mais comuns em qualquer linguagem. Em Rust, o sistema de tipos torna o trabalho com strings seguro e eficiente.
Converter String para Número — Use
parse(),from_str()e trate erros de conversão entreString,i32,f64e outros tipos numéricos.Formatar Strings — Domine
format!(),println!(),write!()com padding, precisão, argumentos nomeados e formatação personalizada.Dividir String (Split) — Quebre strings com
split(),splitn(),split_whitespace(),lines()e regex.
Arquivos
Leitura e escrita de arquivos são operações fundamentais. Rust oferece APIs seguras e ergonômicas para manipulação de arquivos.
Ler Arquivo — Leia arquivos inteiros ou linha por linha com
fs::read_to_string(),BufReadere tratamento de erros robusto.Escrever em Arquivo — Crie e escreva arquivos com
fs::write(),File::create(),BufWritere modo append.Ler Arquivo CSV — Parse de arquivos CSV usando a crate
csvcom deserialização viaserde, cabeçalhos e delimitadores personalizados.
HTTP
Construa clientes e servidores HTTP de alta performance com o ecossistema async do Rust.
Fazer Requisição HTTP — Envie requisições GET e POST com a crate
reqwest, incluindo headers, corpo JSON e chamadas assíncronas.Criar Servidor HTTP — Monte um servidor web com
axum, defina rotas, handlers e retorne respostas JSON.
JSON
Serialize e deserialize dados JSON com segurança de tipos usando serde — a biblioteca de serialização mais popular do ecossistema Rust.
Parse JSON — Converta JSON para structs Rust com
serde_json, usandofrom_str(),Valuee deserialização tipada.Serializar Struct para JSON — Transforme structs Rust em JSON com
Serialize,to_string(),to_writer()e formatação pretty-print.
Concorrência
Aproveite o poder do paralelismo e da concorrência em Rust com segurança garantida em tempo de compilação.
Executar Threads — Crie threads com
thread::spawn(), usejoin(), closuresmovee thread pools comrayon.Async/Await Básico — Programe de forma assíncrona com o runtime
tokio,async fn,.await,join!eselect!.
CLI
Construa ferramentas de linha de comando robustas e amigáveis com Rust.
Ler Argumentos da Linha de Comando — Processe argumentos com
std::env::argse a crateclapcom derive macros e validação.Ler Input do Usuário — Capture entrada do teclado com
stdin().read_line(),trim(),parse()e loops de validação.
Banco de Dados
Conecte sua aplicação Rust a bancos de dados relacionais com segurança e performance.
- Conectar ao PostgreSQL — Use
sqlxcomPgPool, variáveis de ambiente,query_as!e operações CRUD básicas.
Como Usar as Receitas
- Copie o
Cargo.toml— Cada receita lista as dependências necessárias - Copie o código — Todos os exemplos têm uma função
main()completa - Execute com
cargo run— Veja a saída esperada na seção de exemplo - Adapte ao seu projeto — Use o código como ponto de partida
Precisa de algo que não está aqui? Confira nosso guia completo de Rust ou visite a documentação oficial.
Converter String para Número em Rust
Converter String para Número em Rust Converter uma String (ou &str) para um tipo numérico é uma das operações mais comuns em Rust. O método parse() é a forma …
Formatar Strings em Rust
Formatar Strings em Rust Rust oferece um sistema de formatação poderoso e seguro em tempo de compilação. As macros format!(), println!() e write!() usam a mesma …
Dividir String em Rust (Split)
Dividir String em Rust (Split) Dividir strings em partes menores é uma operação fundamental em processamento de texto. Rust oferece vários métodos nativos para …
Ler Arquivo em Rust
Ler Arquivo em Rust Ler arquivos é uma operação essencial em qualquer programa. Rust fornece APIs seguras e eficientes para leitura de arquivos, desde métodos …
Escrever em Arquivo em Rust
Escrever em Arquivo em Rust Rust oferece várias formas de escrever em arquivos, desde funções simples de uma linha até escrita bufferizada para alta …
Ler Arquivo CSV em Rust
Ler Arquivo CSV em Rust A crate csv é a solução padrão para trabalhar com arquivos CSV em Rust. Combinada com serde, ela permite deserializar linhas do CSV …
Fazer Requisição HTTP em Rust
Fazer Requisição HTTP em Rust A crate reqwest é a biblioteca HTTP mais popular do ecossistema Rust. Ela suporta requisições síncronas e assíncronas, headers …
Criar Servidor HTTP em Rust
Criar Servidor HTTP em Rust O axum é um framework web moderno e ergonômico, construído sobre o ecossistema tokio e tower. Ele oferece rotas tipadas, extração …
Parse JSON em Rust
Parse JSON em Rust A crate serde_json é a ferramenta padrão para trabalhar com JSON em Rust. Ela permite deserializar JSON tanto para structs tipadas quanto …
Serializar Struct para JSON em Rust
Serializar Struct para JSON em Rust Serializar dados Rust para JSON é essencial para APIs, configurações e troca de dados. A crate serde com serde_json torna …