Exemplos

Gerais

Argumentos

Imprime o(s) argumento(s) [numerados] com que o arquivo foi executado na linha-de-comando.

// args.go

package main   import (. "fmt"; "flag")   func main() {   flag.Parse() for i := -1; i < flag.NArg(); i++ { Printf("%d: %s\n",i,flag.Arg(i)) }   }

Input do usuário

Reconhece o input do usuário e o imprime.

// user_input.go

package main   import(. "fmt"; "os";"bufio")   func main() {   Printf("Escreva alguma coisa: ") line, _ := (bufio.NewReader(os.Stdin)).ReadString('\n') Printf("Você escreveu: \"%s\"\n",line[0 : len(line)-1]) // - "\n"    }

Manipulação de arquivo

Ler arquivo

Lê o conteúdo de um arquivo e o imprime.

// read_file.go

package main   import (. "fmt"; "io/ioutil")   func main() { doc, _ := ioutil.ReadFile("/caminho/para/o/arquivo.txt") Printf(string(doc) + "\n") }

Escrever arquivo

Escreve, de forma simples, uma dada string num determinado arquivo.

// write_file.go

package main   import ("io/ioutil")   func main() {   ioutil.WriteFile("um/arquivo.txt",[]byte("Um texto qualquer"),0644)   }

"Traduzir" arquivo (regexp)

Lê-se um arquivo, aplica-se uma substituição na string conteúdo conforme um padrão regex e salva-se o novo conteúdo em um novo arquivo.

// traduce_file.go

package main   import ("io/ioutil"; "regexp")   func main() {   oldfile := "text.txt" //<= "abcdefghijkl"  newfile := "text2.txt"   docu, _ := ioutil.ReadFile(oldfile) // docu = []uint8  doc := string(docu) // doc = string    re := regexp.MustCompile("[b-c]|[i-j]") docu = []byte(re.ReplaceAllString(doc, "X"))   ioutil.WriteFile(newfile,docu,0644) //=> "aXXdefghXXkl"    }
Comments