Files and I/O / Reading files / Essential Go

Run Settings
LanguageGo
Language Version
Run Command
package main import ( "bufio" "fmt" "log" "os" ) // ReadLines reads all lines from a file func ReadLines(filePath string) ([]string, error) { file, err := os.OpenFile(filePath, os.O_RDONLY, 0666) if err != nil { return nil, err } defer file.Close() scanner := bufio.NewScanner(file) res := make([]string, 0) for scanner.Scan() { line := scanner.Text() res = append(res, line) } if err = scanner.Err(); err != nil { return nil, err } return res, nil } func main() { path := "main.go" lines, err := ReadLines(path) if err != nil { log.Fatalf("ReadLines failed with '%s'\n", err) } fmt.Printf("File %s has %d lines\n", path, len(lines)) }
Editor Settings
Theme
Key bindings
Full width
Lines