Como ler um arquivo usando a linguagem ferrugem

Como ler um arquivo usando a linguagem ferrugem

A capacidade de ler arquivos é extremamente importante para qualquer desenvolvedor. Ele nos permite carregar informações de fontes externas e manipulá -las como vemos adequado.

Neste artigo, discutiremos vários truques e métodos para ler arquivos na linguagem de programação da ferrugem.

Configuração do projeto

O conjunto inicial é criar uma estrutura de projeto. Podemos fazer isso usando o comando de carga como:

$ cargo novo read_file

O comando anterior inicializará um novo projeto com o nome especificado. No diretório raiz, adicione um arquivo de texto que conterá os dados de amostra que leremos com ferrugem.

Este tutorial usará um arquivo de texto simples que contém informações de ARP de uma máquina Windows.

As informações de amostra são como mostrado:

Interface: 192.168.0.104 --- 0xc
Endereço da Internet Tipo de endereço físico
192.168.0.1 dinâmico D4-B1-06-99-3B-63
192.168.0.255 FF-FF-FF-FF-FF-FF estático
224.0.0.22 01-00-5E-00-00-16 estática
224.0.0.251 01-00-5E-00-00-FB estático
224.0.0.252 01-00-5E-00-00-FC estático
239.255.255.250 01-00-5E-7F-FF-FA estática
255.255.255.255 FF-FF-FF-FF-FF-FF estático
Interface: 192.168.192.1 --- 0x16
Endereço da Internet Tipo de endereço físico
192.168.194.72 00-15-5D-A5-46-20 Dinâmica
192.168.195.230 00-15-5D-A5-40-17 Dinâmica
192.168.202.115 00-15-5D-A5-4A-C1 Dinâmica
192.168.205.217 00-15-5D-A5-47-CD Dinâmica
192.168.207.255 FF-FF-FF-FF-FF-FF estático
224.0.0.22 01-00-5E-00-00-16 estática
224.0.0.251 01-00-5E-00-00-FB estático
239.192.152.143 01-00-5E-40-98-8f estático
239.255.255.250 01-00-5E-7F-FF-FA estática

Com a configuração do projeto e o arquivo de amostra pronto, podemos ler o conteúdo do arquivo.

Leia o arquivo como uma string

O primeiro e mais simples método a ler um arquivo em ferrugem é carregá -lo como uma string inteira. Podemos fazer isso usando o método STD :: fs :: read_to_string.

O código a seguir mostra como você pode ler um arquivo como uma string no Rust:

use std :: fs :: arquivo;
Use std :: io :: prelude ::*;
fn main ()
Deixe Mut File = File :: Open ("ARP.TXT")
.espera ("arquivo não encontrado");
deixe mut data = string :: new ();
arquivo.read_to_string (e dados mut)
.Espere ("erro ao ler o arquivo");
println!("", dados);

O código anterior importa a estrutura do arquivo e o módulo Prelude. Na função principal, criamos uma variável mutável chamada arquivo e carrega o ARP.Arquivo TXT para leitura.

Em seguida, lemos o conteúdo do arquivo usando o read_to_string e passamos uma referência mutável à variável de dados. Em seguida, podemos imprimir o conteúdo do arquivo usando o println! macro.

Podemos executar o código como:

$ Cargo Run

Leia a linha de arquivo por linha

Também podemos ler uma linha de arquivo por linha usando o iterador de linhas. O iterador irá operar no bufreader do objeto de arquivo. Um código de exemplo é fornecido abaixo:

use std :: fs :: arquivo;
use std :: io :: bufreader;
Use std :: io :: prelude ::*;
fn main ()-> std :: io :: resultado<()>
Deixe o arquivo = arquivo :: aberto ("arp.TXT")
.Espere ("arquivo não encontrado!");
Deixe Buf_Reader = BufReader :: new (arquivo);
para linha em buf_reader.linhas ()
println!("", linha?);

OK(())

Leia o arquivo como vetor

Também podemos ler um arquivo como vetor, como mostrado no código de exemplo fornecido abaixo:

fn read_file () -> std :: io :: resultado>
Deixe Mut File = File :: Open ("ARP.TXT")?;
Deixe mut buf = vec :: new ();
arquivo.read_to_end (e dados mut);
retornar ok (dados);

O código anterior usa o VEC :: New Método para criar um novo vetor vazio. Em seguida, usamos o read_to_end para ler os bytes até o final do arquivo e colocá -los no buffer.

Conclusão

Neste artigo, abordamos o básico da operação de arquivo usando a linguagem de programação de ferrugem. Além disso, ilustramos vários métodos e técnicas usadas para ler arquivos. Esperamos que você tenha achado este artigo útil. Verifique os outros artigos de dica do Linux para obter mais dicas e informações.