Golang

Pacote de scanner Golang

Pacote de scanner Golang

Nesta lição sobre o pacote Scanner em Golang, estudaremos vários exemplos de como usar Scanners de várias maneiras na linguagem de programação Go. Vamos começar agora.

Começando com Go

Apenas para ter certeza de que temos o ambiente configurado de forma consistente, aqui está a estrutura de diretório que criei para o meu programa Hello World:

Aqui está o programa que criamos:

pacote principal
importar "fmt"
func main ()
fmt.Printf ("Olá, mundo.\ n ")

Podemos executar o programa acima com o seguinte comando:

vai correr olá.vai

Depois de executar este comando, aqui está a saída que você verá:

Agora isso parece bom. Vamos passar para a nossa agenda principal.

Scanner e Pacote Bufio em Golang

Neste post, veremos os pacotes de bufio e scanner.

Começaremos com um exemplo muito simples para dividir Strings em várias palavras. Vejamos o seguinte exemplo:

pacote principal
importar (
"bufio"
"fmt"
"cordas"
)
func main ()
inputStr: = "golang shubham linux"
scanner: = bufio.NewScanner (strings.NewReader (inputStr))
scanner.Split (bufio.ScanWords)
para scanner.Varredura()
fmt.Println (scanner.Texto())

O resultado deste programa será:

Golang
Shubham
linux

Aqui, o Scanner usou a saída de entrada em buffer lendo a entrada fornecida como um fluxo.

Lendo um arquivo

Agora, vamos tentar ler um arquivo em Go, usando bufio para ler um arquivo linha por linha. Para fazer isso, primeiro criamos um arquivo de amostra no mesmo diretório de nosso programa Go. Aqui está nosso arquivo:

Em seguida, escrevemos nosso programa para ler esse arquivo linha por linha:

pacote principal
importar (
"bufio"
"fmt"
"registro"
"os"
)
func main ()
fileToRead, erro: = os.Abrir("./Olá.TXT")
se erro != nil
registro.Erro fatal)

adiar fileToRead.Perto()
scanner: = bufio.NewScanner (fileToRead)
para scanner.Varredura()
fmt.Println (scanner.Texto())

se erro: = scanner.Errar(); erro != nil
registro.Erro fatal)

Assim que executarmos este programa, aqui está a saída que obteremos

Recebendo a entrada do usuário com bufio

Esta é a operação mais útil a ser realizada quando um usuário está começando com a linguagem Golang.

Podemos receber uma entrada do usuário como:

pacote principal
importar (
"bufio"
"fmt"
"os"
)
func main ()
leitor: = bufio.NewReader (os.Stdin)
fmt.Imprimir ("Digite o texto:")
texto, _: = leitor.ReadString ('\ n')
fmt.Println (texto)

Vamos executar este programa agora:

Apenas para observar, há outra maneira de receber entrada se você está OK, NÃO aceitando um espaço em branco nela:

pacote principal
importar "fmt"
var string de entrada
func main ()
fmt.Imprimir ("Digite seu nome =")
fmt.Scanf ("% s", & entrada)
fmt.Println ("Olá" + entrada)

Vamos executar este programa agora:

Conclusão

Para estudar, o pacote Scanner e Bufio em Go é muito útil e nunca é possível obter o suficiente. Leia mais exemplos do pacote e tente o máximo possível por conta própria.

Melhores emuladores de console de jogo para Linux
Este artigo irá listar software de emulação de console de jogo popular disponível para Linux. A emulação é uma camada de compatibilidade de software q...
Melhores distros Linux para jogos em 2021
O sistema operacional Linux percorreu um longo caminho desde sua aparência original, simples e baseada em servidor. Este sistema operacional melhorou ...
Como capturar e transmitir sua sessão de jogo no Linux
No passado, jogar era considerado apenas um hobby, mas com o tempo a indústria de jogos viu um grande crescimento em termos de tecnologia e número de ...